好久没有更新了,发篇占位文:如果某个函数的默认参数是个常量,那么怎么样获取这个参数的常量名称?见代码:
getname() == 'test1') { var_dump($param->isdefaultvalueconstant()); } if($param->getname() == 'test2') { var_dump($param->isdefaultvalueconstant()); } if($param->isdefaultvalueavailable() && $param->isdefaultvalueconstant()) { var_dump($param->getdefaultvalueconstantname()); }}class foo2 { const bar = 'foo2::bar';}class foo { const bar = 'foo::bar'; public function baz($param1 = self::bar, $param2=foo2::bar, $param3=const_test_1) { }}$method = new reflectionmethod('foo', 'baz');$params = $method->getparameters();foreach ($params as $param) { if ($param->isdefaultvalueconstant()) { var_dump($param->getdefaultvalueconstantname()); }}?>// 运行结果bool(false)bool(true)string(12) const_test_1string(9) self::barstring(9) foo2::barstring(12) const_test_1
原文地址:怎么样获取php函数默认参数的常量名, 感谢原作者分享。
