Hi Rasmus: > Yes, no change in any of that. In your usage, the case that behaves > differently in 5.4 was actually a fatal error in 5.3, so chances are > pretty good you don't have too many of these.
Things only go fatal in 5.3 under some circumstances. Doing isset() does not: <?php function test($var) { echo PHP_VERSION . ' ' . strtoupper(gettype($var)) . "\n"; echo "one level isset: "; var_dump(isset($var['blah'])); echo "one level is_array: "; var_dump(is_array($var['blah'])); echo "two level isset: "; var_dump(isset($var['blah']['bloo'])); echo "two level is_array: "; var_dump(is_array($var['blah']['bloo'])); } test('foo'); ?> 5.3.9RC3-dev STRING one level isset: bool(true) one level is_array: bool(false) two level isset: bool(false) << This is not fatal, the next line is. two level is_array: PHP Fatal error: Cannot use string offset as an array... 5.4.0RC3-dev STRING one level isset: bool(true) one level is_array: bool(false) two level isset: bool(true) << Was false in 5.3, now is true. two level is_array: bool(false) Thanks, --Dan -- T H E A N A L Y S I S A N D S O L U T I O N S C O M P A N Y data intensive web and database programming http://www.AnalysisAndSolutions.com/ 4015 7th Ave #4, Brooklyn NY 11232 v: 718-854-0335 f: 718-854-0409 -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php