Bug #64963 [Com]: ReflectionClass::getMethods does not identify traits

From: Date: Mon, 30 Jul 2018 16:55:19 +0000
Subject: Bug #64963 [Com]: ReflectionClass::getMethods does not identify traits
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-216526@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=64963&edit=1 ID: 64963 Comment by: josef dot sabl at gmail dot com Reported by: alasdair at softhome dot net Summary: ReflectionClass::getMethods does not identify traits Status: Open Type: Bug Package: Reflection related Operating System: Debian Wheezy PHP Version: 5.4.15 Block user comment: N Private report: N New Comment: This bug affects Nette Frameworks DI as well (as described here https://github.com/nette/di/issues/169) This surely needs to be fixed. The argument that Trais are copied into classes so this is okay is very weak imho. Previous Comments: ------------------------------------------------------------------------ [2017-01-24 18:44:39] love at sickpeople dot se FWIW, since the trait methods are copied, it is essentially declared by both parties. ------------------------------------------------------------------------ [2017-01-24 18:43:04] love at sickpeople dot se I get that changing getDeclaringClass() will generate some discussion. What about adding getDeclaringTrait()? ------------------------------------------------------------------------ [2016-06-18 12:38:05] cmb@php.net Related To: Bug #68742 ------------------------------------------------------------------------ [2014-10-01 22:12:58] ocramius at gmail dot com Note that this also affects various codegen components: the problem is that a trait does not actually exist unless used inside the context of a class. Methods and members of the trait that were copied into the class context at eval-time should be reflected as members of the class, not of the trait: same goes for the names of the methods, which are the final ones (after eventual aliasing). Information about the trait itself is pretty much useless except for libraries that extract method body/file information: these could probably need a different API. Related: - https://github.com/zendframework/zf2/issues/6620 - https://github.com/Ocramius/ProxyManager/issues/147 ------------------------------------------------------------------------ [2013-10-15 17:14:20] nikic@php.net The No-Feedback was an automated status change. I reverted the bug back to Open ;) ------------------------------------------------------------------------ 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=64963 -- Edit this bug report at https://bugs.php.net/bug.php?id=64963&edit=1

« previous php.bugs (#216526) next »