News Feed
Jobs Feed
Sections




News Archive
rooJSolutions Blog:
Watch-out PHP 5.3.7+ is about.. and the is_a() / __autoload() mess.
September 02, 2011 @ 10:43:24

New from the rooJSolutions blog there's a post pointing out an issue that PHP 5.3.7 has broken the is_a functionality in a lot of cases. The post talks some about what's broken and how you can work around it if you're effected.

The key issue was that 5.3.7 accidentally broke is_a() for a reasonably large number of users. Unfortunately the fixup release 5.3.8 did not address this 'mistake', and after a rather fruitless exchange I gave up trying to persuade the group (most people on mailing list), that reverting the change was rather critical (at least pierre supported reverting it in the 5.3.* series).

This new issue was causing some strange errors to pop up in his code because of a parameter type change in the is_a call, updating the first parameter to be an object instead of a class name. The is_a() call sends its requests to __autoload in some cases and the string->object mismatch of those parameters causes errors to be thrown. His workaround is, in your checking, just be sure to call an is_object first before passing things off to be is_a() checked and autoloaded.

0 comments voice your opinion now!
bug isa autoload parameter change string object


blog comments powered by Disqus

Similar Posts

Christopher Jones' Blog: When a few seconds are important: improving PHP Oracle connection speed

Paul Reinheimer's Blog: PHP BUG - err mm:core: failed to open semaphore file

Pierre-Alain Joye's Blog: Zip 1.4.0, let comment it!

Padraic Brady's Blog: A Guide To Zend Framework Bug Hunt Days

Brian Moon's Blog: PHP 5.3 and mysqlnd - Unexpected results


Community Events











Don't see your event here?
Let us know!


composer introduction tool series development example testing code phpunit functional database framework community zendframework2 opinion release interview language object podcast

All content copyright, 2013 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework