如何获取函数传递的变量名+数组键


PHP - How to get variable name + array key passed by a function

包含键的数组:

$foo = array('id' => '123');

当我调用这个函数:

printVarNameAndKey($foo['id']);

打印:

$foo['id']

这在PHP中可能吗?

编辑

这段代码不起作用:

function print_var_name($var) {
    foreach($GLOBALS as $var_name => $value) {
        if ($value === $var) {
            return $var_name;
        }
    }
    return false;
}

$GLOBALS不是超全局变量,您可以将代码更新为

function print_var_name($var) {
    global $GLOBALS;
    foreach($GLOBALS as $var_name => $value) {
        if ($value === $var) {
            return $var_name;
        }
    }
    return false;
}

,但是正如@jeroen所说,一个值不能唯一地标识一个变量。