Although most existing PHP 5 code should work without changes, you should pay attention to the following backward incompatible changes:
NULL when passed
     incompatible arguments as of PHP 5.2.1.
    
   TRUE on success as of PHP 5.2.1.
    
   TRUE on success as of PHP 5.2.1.
    
   FALSE.
     As of PHP 5.2.0, this operation will emit an E_WARNING, 
     as is the case in all other instances where division by zero is performed.
    
    
<?php
print 10 % 0;
/* Warning:  Division by zero in filename on line n */
?>
<?php
class foo {}
$foo = new foo;
print $foo;
/* Catchable fatal error:  Object of class foo could
   not be converted to string in filename on line n */
?>
<?php
class foo {
    public function __toString() {
        throw new Exception;
    }
}
try {
    print new foo;
    /* Fatal error:  Method foo::__toString() must
       not throw an exception in filename on line n */
} catch(Exception $e) {}
?>
<?php
abstract class foo {
    abstract static function bar();
    /* Strict Standards:  Static function foo::bar()
       should not be abstract in filename on line n */
}
?>
<?php
/* when allow_url_include is OFF (default) */
include "data:;base64,PD9waHAgcGhwaW5mbygpOz8+";
/* Warning:  include(): URL file-access is disabled
   in the server configuration in filename on line n */
?>
FALSE when
     openbase_dir restrictions are violated.