-1
我有一個這樣的匿名函數數組。我需要像這樣訪問此函數內部的數組鍵:PHP獲取匿名函數鍵名
$funcs = array(
"fun_1" => function(){
//want here to get fun_1 name (current array key)
echo __KEY__; //echoes "fun_1"
}
)
是否有可能?
我有一個這樣的匿名函數數組。我需要像這樣訪問此函數內部的數組鍵:PHP獲取匿名函數鍵名
$funcs = array(
"fun_1" => function(){
//want here to get fun_1 name (current array key)
echo __KEY__; //echoes "fun_1"
}
)
是否有可能?
我不知道你正在嘗試做的,但是這是一個選項:
$funcs = array(
"fun_1" => function($key){
echo $key;
}
);
foreach($funcs as $key => $func){
$func($key);
}
數組元素保持數據項的引用。因此,不同的鍵(或不同陣列的不同元素)可以引用相同的項目。您無法確定函數內正在使用哪個引用 - 您需要將其作爲參數存儲。
考慮:
$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' 發生?
爲什麼不把密鑰傳遞給你的匿名函數? – ethan