News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

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

David Goodwin's Blog: Book Review: Object-Orientated Programming with PHP5 (Hasin Hayder, Packt)

Kae Verens' Blog: Book Review: Learning PHP Data Objects

Wojciech Sznapka's Blog: Why Mockery is better than PHPUnit Mock Builder (with Symfony2)

Greg Beaver's Blog: problem with PHP_Archive-based phars tracked to odd unpack() bug

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


Community Events





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


release interview introduction threedevsandamaybe community list wordpress unittest series laravel developer install opinion code framework configure testing language podcast refactor

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