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]
4 つの変数が与えられた場合:
$a = 1;
$b = 3;
$c = 4;
$d = 2;
compact
それらを連想配列に変換するために使用できます。
$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;
}
}