For the record, I'd like to point out I do need the new behaviour.
In 5.3.6 you need reflection to check if a class implements an interface.
You also need to check is_subclass_of AND compare the lowercased classes.
All that is about 5 times slower than is_a in 5.3.8.

Probably it should be class_is_a() instead of altering is_a() behaviour,
but the need to match class names against each other is pretty much real.

Sincerely yours, Aleksandr.

On Aug 25, 2011, at 05:51, a...@akbkhome.com wrote:

> I'm not sure it's possible to get agreement on if this is a bug or not, you 
> might see a bug, I just see this as a pointless change for consistency that 
> pretty much nobody will ever need or use.
> 
> I think I'll leave it as
> a) no bug was ever reported on the previous behaviour.
> 
> b) intended "design" of is_subclass_of  was originally to return false on 
> non-object - andrei (1999)
> http://svn.php.net/viewvc/php/php-src/trunk/Zend/zend_builtin_functions.c?r1=17245&r2=17272
>  
> <http://svn.php.net/viewvc/php/php-src/trunk/Zend/zend_builtin_functions.c?r1=17245&r2=17272>
> 
> c) is_a() was introduced by sebastian (2002) and kept this intended behaviour
> http://svn.php.net/viewvc/php/php-src/trunk/Zend/zend_builtin_functions.c?r1=67102&r2=69234
>  
> <http://svn.php.net/viewvc/php/php-src/trunk/Zend/zend_builtin_functions.c?r1=67102&r2=69234>
> 
> d) when andrey (2004) proposed the change to accepts strings on  
> is_subclass_of, he deliberately maintained the existing behaviour for is_a()
> http://svn.php.net/viewvc/php/php-src/trunk/Zend/zend_builtin_functions.c?r1=170604&r2=171349
>  
> <http://svn.php.net/viewvc/php/php-src/trunk/Zend/zend_builtin_functions.c?r1=170604&r2=171349>
> 
> e) is_a() has a valid use case , and is currently reasonably commonly used.
> 
> d) the new behaviour is an uncommon use case, and can be done very easily in 
> other ways.
> 
> 
> BTW. we could really do with a searchable archive of php.dev + internals... - 
> It's pretty difficult to find out if this was ever discussed before..
> 
> Regards
> Alan


--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to