使用PHP获取具有最高/最大值的变量的名称

使用PHP获取具有最高/最大值的变量的名称,php,Php,我有4个变量,每个变量都有一个整数。有人能告诉我如何得到具有最高值的变量的名称吗 提前感谢。以下是您所问问题的解决方案: $arr = compact('v1', 'v2', 'v3', 'v4'); arsort($arr); $name = key($arr); // get the value: ${$name} 但是,首先将变量存储在数组中更有意义。更好的设置是: $arr = array('v1' => 543, 'v2' => 41, 'v3' => 1, 'v4

我有4个变量,每个变量都有一个整数。有人能告诉我如何得到具有最高值的变量的名称吗


提前感谢。

以下是您所问问题的解决方案:

$arr = compact('v1', 'v2', 'v3', 'v4');
arsort($arr);
$name = key($arr);
// get the value: ${$name}
但是,首先将变量存储在数组中更有意义。更好的设置是:

$arr = array('v1' => 543, 'v2' => 41, 'v3' => 1, 'v4' => 931);
arsort($arr);
$name = key($arr);
// get the value: $arr[$name]
给定四个变量:

$a = 1;
$b = 3;
$c = 4;
$d = 2;
可以使用将它们转换为关联数组:

$array = compact('a', 'b', 'c', 'd');
var_dump($array); // array('a' => 1, 'b', => 3, 'c' => 4, 'd' => 2);
然后找到最大键/值:

$max_key = $max_value = null;

foreach ($array as $key => $value) {
  if (is_null($max_value) || $value > $max_value) {
    $max_key = $key; $max_value = $value;
  }
}

如何分配这些值?为什么需要变量的名称?如果你需要参与这种元编程,你可能做了一些非常错误的事情。