2014-04-14 65 views
0

我在 http://codepad.viper-7.com/o5MxgFhttp://codepad.viper-7.com/qUpTagPHP中使用数组作为函数

在第二个片段创建了两个代码片段,我试图用数组作为一个电话回来,因为我发现在 http://www.php.net/manual/en/language.types.array.php

注意:方括号和花括号可以互换使用 访问数组元素(例如$ array [42]和 $ array {42}都将在示例中执行相同的操作 以上)。

所以,我想我可以用数组作为函数,这样我不需要申报

$get_new_key = function ($k) use($fa) { 
    return $fa[$k]; 
}; 

但你可以看到,我得到一个

: array_map()期望参数1是有效的回调,第一个数组 成员不是有效的类名称或对象在/ code/qUpTag第8行上

错误。

有没有什么可以使数组可调用,而不创建一个配套功能来访问它的值?

谢谢。

回答

1

具有可调用数组并不意味着它返回数组的值。相反,它是一个指向类或对象上方法的数组。

例如,array('MyClass', 'my_method')是一个可调用对MyClassarray($object, 'method')静态方法my_method是一个可调用用于$object在对象上的实例方法method

您可以在PHP documentation

中查看更多有关可呼叫类型的信息