기존 PHP 4 코드의 대부분은 변경 없이 작동하지만, 다음의 호환 되지 않는 변경점에는 주의해야 합니다:
Example #1 strrpos()와 strripos()가 전체 문자열을 needle로 사용합니다.
<?php
var_dump(strrpos('ABCDEF','DEF')); //int(3)
var_dump(strrpos('ABCDEF','DAF')); //bool(false)
?>
Example #2 프로퍼티가 없는 객체를 더 이상 "빈" 것으로 판단하지 않습니다.
<?php
class test { }
$t = new test();
var_dump(empty($t)); // echo bool(false)
if ($t) {
// 이 부분이 실행됩니다.
}
?>
Example #3 몇몇 경우에 클래스는 사용하기 전에 선언해야 합니다.
<?php
// 오류 없이 실행:
$a = new a();
class a {
}
// 오류 발생:
$a = new b();
interface c {
}
class b implements c {
}
?>