php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /php-7.1.11/ext/reflection/tests/ |
files >> //php-7.1.11/ext/reflection/tests/bug52057.phpt |
--TEST-- Bug #52057 (ReflectionClass fails on Closure class) --FILE-- <?php $closure = function($a) { echo $a; }; $reflection = new ReflectionClass('closure'); var_dump($reflection->hasMethod('__invoke')); // true $reflection = new ReflectionClass($closure); var_dump($reflection->hasMethod('__invoke')); // true $reflection = new ReflectionObject($closure); var_dump($reflection->hasMethod('__invoke')); // true $reflection = new ReflectionClass('closure'); var_dump($h = $reflection->getMethod('__invoke')); // true var_dump($h->class.'::'.$h->getName()); $reflection = new ReflectionClass($closure); var_dump($h = $reflection->getMethod('__invoke')); // true var_dump($h->class.'::'.$h->getName()); $reflection = new ReflectionObject($closure); var_dump($h = $reflection->getMethod('__invoke')); // true var_dump($h->class.'::'.$h->getName()); ?> --EXPECTF-- bool(true) bool(true) bool(true) object(ReflectionMethod)#%d (2) { ["name"]=> string(8) "__invoke" ["class"]=> string(7) "Closure" } string(17) "Closure::__invoke" object(ReflectionMethod)#%d (2) { ["name"]=> string(8) "__invoke" ["class"]=> string(7) "Closure" } string(17) "Closure::__invoke" object(ReflectionMethod)#%d (2) { ["name"]=> string(8) "__invoke" ["class"]=> string(7) "Closure" } string(17) "Closure::__invoke"y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`