注意:我不认为这个问题与PHP的eval
有很大关系。
在Tcl中,eval
获取一个列表,使用第一项作为函数(proc)名称,其余项作为参数,例如
eval [list foobar arg1 arg2 arg3]
相当于
foobar arg1 arg2 arg3
在PHP中,call_user_func
和call_user_func_array
都需要至少两个参数:(1)函数名称,(2)参数或参数数组。
PHP中是否有类似的功能只有一个参数?
我写了自己的,如下所示,但我更喜欢原生方法。
function call_user_array(array $a) {
return call_user_func_array(array_shift($a), $a);
}
提前感谢任何提示。
<击> P.S。不确定“lambda”是否与此有关,但出于某种原因会想到这个词:如果有更多知识的人请删除标签,如果它实际上不相关,还有这个注释?再次感谢!
答案 0 :(得分:2)
不,没有内置的东西可以做到这一点。既然它可以在一行中实现(就像你一样),也没有太多理由考虑包括一个。