I keď vačšina existujúceho PHP 4 kódu by mala fungovať bez zmien, mali by ste dať pozor na následujúce spätne nekompatibilné zmeny:
Example#1 strrpos() a strripos() teraz používa celý reťazec ako ihlu
<?php
var_dump(strrpos('ABCDEF','DEF')); //int(3)
var_dump(strrpos('ABCDEF','DAF')); //bool(false)
?>
Example#2 Objekt so žiadnými vlastnosťami sa už viac nepovažuje za "empty"
<?php
class test { }
$t = new test();
var_dump(empty($t)); // echo bool(false)
if (!$t) {
// Sa vykona
}
?>
Example#3 V niektorých prípadoch sa triedy pred použitím musia deklarovať
<?php
//funguje bez chyb:
$a = new a();
class a {
}
//vyhodi chybu:
$a = new b();
interface c{
}
class b implements c {
}
?>