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 >> /opt/php-7.0.1/ext/reflection/tests/ |
files >> //opt/php-7.0.1/ext/reflection/tests/ReflectionParameter_003.phpt |
--TEST-- ReflectionParameter class - isOptional, isDefaultValueAvailable and getDefaultValue methods. --CREDITS-- Robin Fernandes <robinf@php.net> Steve Seear <stevseea@php.net> --FILE-- <?php class ReflectTestClass { public static function staticMethod($paramOne, $anotherParam = "bob", &$thirdParam = "jack", $arrayParam = array('one')) { echo "hello from test\n"; echo "third is $thirdParam\n"; return ++$theIncrement; } } $jane = "jane"; ReflectTestClass::staticMethod("bob", "jack"); $refMethod = new ReflectionMethod('ReflectTestClass', 'staticMethod'); $refParameters = $refMethod->getParameters(); echo "parameter names from staticMethod method:\n\n"; foreach($refParameters as $parameter) { var_dump($parameter); if($parameter->isOptional()) { echo "this parameter is optional\n"; } else { echo "this parameter is not optional\n"; } if($parameter->isDefaultValueAvailable()) { echo "this parameter has a default value\n"; } else { echo "this parameter has no default value\n"; } /* $val = 0; try { $val = $parameter->getDefaultValue(); var_dump($val); } catch (ReflectionException $e) { print $e->getMessage(); echo "\n"; } */ echo "\n"; } ?> --EXPECTF-- hello from test third is jack Notice: Undefined variable: theIncrement in %s on line 8 parameter names from staticMethod method: object(ReflectionParameter)#%d (1) { ["name"]=> string(8) "paramOne" } this parameter is not optional this parameter has no default value object(ReflectionParameter)#%d (1) { ["name"]=> string(12) "anotherParam" } this parameter is optional this parameter has a default value object(ReflectionParameter)#%d (1) { ["name"]=> string(10) "thirdParam" } this parameter is optional this parameter has a default value object(ReflectionParameter)#%d (1) { ["name"]=> string(10) "arrayParam" } this parameter is optional this parameter has a default valuey~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`