Bug #55475 [Com]: is_a() triggers autoloader

From: Date: Wed, 24 Aug 2011 01:59:04 +0000
Subject: Bug #55475 [Com]: is_a() triggers autoloader
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-162885@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=55475&edit=1 ID: 55475 Comment by: alan at akbkhome dot com Reported by: mads at gartneriet dot dk Summary: is_a() triggers autoloader Status: Assigned Type: Bug Package: Scripting Engine problem PHP Version: 5.3.7 Assigned To: dmitry Block user comment: N Private report: N New Comment: For reference: The workaround is to do this if (is_a($a, 'B')) { becomes if (is_object($a) && is_a($a, 'B')) { Previous Comments: ------------------------------------------------------------------------ [2011-08-23 14:24:59] jha dot rajeev at gmail dot com This also affects HTML_Template_Flexy pear package that uses is_a to check returned object against PEAR_Error class. No matter what behavior is right it looks broken to me because I am patching this pear packages files right now! ------------------------------------------------------------------------ [2011-08-23 08:25:33] alan at akbkhome dot com @stas - the point of un-depreciating and working with a string was the second argument, not the first one. eg. is_a($something, 'might_be_not_loaded_class') rather than $something instanceof might_be_not_loaded_class ------------------------------------------------------------------------ [2011-08-23 06:26:21] alan at akbkhome dot com From the manual. "Returns TRUE if the object is of this class or has this class as one of its parents, FALSE otherwise." note the "FALSE otherwise" ... Defiantly a bug.. ------------------------------------------------------------------------ [2011-08-23 05:17:52] mads at gartneriet dot dk DB_DataObject uses is_a() to check if a variable is both an object and an instance of a particular object. PEAR::isError() does too. This just gives warnings in my code, and I could of course easily fix these two places in my local pear-code. But then it will bite me the next time I upgrade those packages from PEAR. ------------------------------------------------------------------------ [2011-08-22 21:46:19] colder@php.net What code? Do you have some example? ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=55475 -- Edit this bug report at https://bugs.php.net/bug.php?id=55475&edit=1

« previous php.bugs (#162885) next »