Migrarea de la PHP 4 la PHP 5.0.x
PHP Manual

Schimbări incompatibile în sens invers

Cu toate că majoritatea codului-sursă existent în PHP 4 ar trebui să funcționeze fără schimbări, totuși ar trebui să atrageți atenția la următoarele schimbări incompatibile în sens invers:

Example #1 strrpos() și strripos() acum utilizează întregul string în calitate de 'ac'

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

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

Example #2 Un obiect fără proprietăți nu mai este considerat "vid"

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

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

if ($t) {
    
// Va fi executat
}
?>

Example #3 În unele cazuri clasele trebuie declarate înainte de a fi utilizate

<?php

// funcționează fără erori:
$a = new a();
class 
{
}


// aruncă o eroare:
$a = new b();

interface 
c{
}
class 
implements {
}

?>


Migrarea de la PHP 4 la PHP 5.0.x
PHP Manual