Migration de PHP 4 à PHP 5.0.x
PHP Manual

Incompatibilités avec les version antérieures

Bien que la plupart des scripts PHP 4 existants devraient fonctionner, il convient de noter quelques incompatibilités avec les versions antérieures de PHP :

Exemple #1 strrpos() et strripos() recherchent maintenant une chaîne de caractères dans une autre

<?php
var_dump
(strrpos('ABCDEF','DEF')); //int(3)

var_dump(strrpos('ABCDEF','DAF')); //bool(false)
?>

Exemple #2 Un objet sans propriété n'est plus considéré comme vide ( empty())

<?php
class test { }
$t = new test();

var_dump(empty($t)); // echo bool(false)

if ($t) {
    
// Cette portion de code sera exécutée
}
?>

Exemple #3 Dans certains cas, les classes doivent être déclarées avant d'être utilisées

<?php

// fonctionne sans erreur :
$a = new a();
class 
{
}


// ici, une erreur :
$a = new b();

interface 
c{
}
class 
implements {
}

?>


Migration de PHP 4 à PHP 5.0.x
PHP Manual