我有
$max = max($a, $b, $c);
结果,让我们说 30 。我不知道哪个变量($a or $b or $c
)给出结果30。
从这个结果(30)我必须找到variable name
。
结果应为$a or $b or $c
。我怎样才能找到这个?
注意:查找max只是一个示例case.I需要来自一组变量值的变量名。
答案 0 :(得分:3)
$max = max($a, $b, $c);
// Create an array so we can find the name for each variable we're checking
$var_array = array(
'$a' => $a,
'$b' => $b,
'$c' => $c,
);
// Use the array search function to find our key: http://php.net/array_search
$max_var_name = array_search($max, $var_array, true);
答案 1 :(得分:3)
$array = array('a'=> $a, 'b'=> $b, 'c'=> $c);
$maxs = array_keys($array, max($array));
答案 2 :(得分:0)
$a = 30; $b=20; $c=40;
$arr[$a] = '$a'; $arr[$b] = '$b'; $arr[$c] = '$c';
echo 'max val='.$max = max($a, $b, $c);
echo 'var name='.$arr[$max];
答案 3 :(得分:-1)
我不是在问你为什么?以下是我认为可行的解决方案
使用get_defined_vars()函数,它将返回数组中所有已定义的变量。然后检查所有变量名称的值和结果值(您想知道变量)。