PHP获取匿名功能键名称

时间:2014-01-16 22:42:30

标签: php anonymous-function

我有一系列像这样的匿名函数。我需要像这样访问这个函数中的数组键:

$funcs = array(
   "fun_1" => function(){
         //want here to get fun_1 name (current array key)
         echo __KEY__; //echoes "fun_1"
    }
)

有可能吗?

2 个答案:

答案 0 :(得分:0)

我不确定你要做什么,但这是一个选择:

    $funcs = array(
       "fun_1" => function($key){
              echo $key;
        }
    );

    foreach($funcs as $key => $func){
        $func($key);
    }

答案 1 :(得分:0)

数组元素包含对数据项的引用。因此,不同的键(或不同阵列的不同元素)可以引用相同的项。您无法确定函数内部使用的引用 - 您需要将其存储为参数。

考虑:

$funcs = array(
   "fun_1" => function(){
     //want here to get fun_1 name (current array key)
     echo __KEY__; //echoes "fun_1"
   }
);
$funcs['fun_2']=$funcs['fun_1'];

当你拨打$ funcs'fun_2'时,你会发生什么?