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/ReflectionProperty_getValue_error.phpt |
--TEST-- Test ReflectionProperty::getValue() errors. --FILE-- <?php class TestClass { public $pub; public $pub2 = 5; static public $stat = "static property"; protected $prot = 4; private $priv = "keepOut"; } class AnotherClass { } $instance = new TestClass(); $invalidInstance = new AnotherClass(); $propInfo = new ReflectionProperty('TestClass', 'pub2'); echo "Too few args:\n"; var_dump($propInfo->getValue()); echo "\nToo many args:\n"; var_dump($propInfo->getValue($instance, true)); echo "\nWrong type of arg:\n"; var_dump($propInfo->getValue(true)); echo "\nInstance without property:\n"; $propInfo = new ReflectionProperty('TestClass', 'stat'); echo "\nStatic property / too many args:\n"; var_dump($propInfo->getValue($instance, true)); echo "\nStatic property / wrong type of arg:\n"; var_dump($propInfo->getValue(true)); echo "\nProtected property:\n"; try { $propInfo = new ReflectionProperty('TestClass', 'prot'); var_dump($propInfo->getValue($instance)); } catch(Exception $exc) { echo $exc->getMessage(); } echo "\n\nInvalid instance:\n"; $propInfo = new ReflectionProperty('TestClass', 'pub2'); var_dump($propInfo->getValue($invalidInstance)); ?> --EXPECTF-- Too few args: Warning: ReflectionProperty::getValue() expects exactly 1 parameter, 0 given in %s on line %d NULL Too many args: Warning: ReflectionProperty::getValue() expects exactly 1 parameter, 2 given in %s on line %d NULL Wrong type of arg: Warning: ReflectionProperty::getValue() expects parameter 1 to be object, boolean given in %s on line %d NULL Instance without property: Static property / too many args: string(15) "static property" Static property / wrong type of arg: string(15) "static property" Protected property: Cannot access non-public member TestClass::prot Invalid instance: Fatal error: Uncaught ReflectionException: Given object is not an instance of the class this property was declared in in %s:47 Stack trace: #0 %s(47): ReflectionProperty->getValue(Object(AnotherClass)) #1 {main} thrown in %s on line 47y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`