PHP – 从函数获取所有参数(即使是可选的)
发布时间:2020-12-13 16:42:18 所属栏目:PHP教程 来源:网络整理
导读:我想从函数中获取所有参数(通过或不通过). 例: ?php function foo($a,$b=1) { return $a-$b; }? 如果我打电话 $test = func_get_args(foo(10));var_dump($test); 我将只有一个数组[0] = 10. 即使我不通过它们,我如何拥有可选参数的值? (我知道func_get_arg
我想从函数中获取所有参数(通过或不通过).
例: <?php function foo($a,$b=1) { return $a-$b; } ?> 如果我打电话 $test = func_get_args(foo(10)); var_dump($test); 我将只有一个数组[0] => 10. 即使我不通过它们,我如何拥有可选参数的值? (我知道func_get_args只返回传递的参数.) 编辑:更准确地说,这就是我在做什么: function insertLog($fct_name="-1",$type="-1",$error="-1",....) { // first thing $params = func_get_args(); var_dump($params); }
您可以使用
ReflectionFunction 功能类完成此任务.
function foo($a,$b=1) { $arr = array(); $ref = new ReflectionFunction(__FUNCTION__); foreach($ref->getParameters() as $parameter) { $name = $parameter->getName(); $arr[$name] = ${$name}; } print_r($arr); // ... } 调用功能: foo(1); 输出: Array ( [a] => 1 [b] => 1 ) Demo (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |