回答
使用緊湊的變量設置爲一個陣列,該陣列排序,然後使用陣列片,以獲得第二值。
然後可以選擇回顯第二個值的鍵。
$a = 2;
$b = 7;
$c = 6;
$d = 1;
$arr = compact('a', 'b', 'c', 'd');
asort($arr);
$second = array_slice($arr,1,1);
Echo "variable name " . Key($second) ."\n";
Echo "value " . ${key($second)};
更新瞭如何從陣列
除非你有一個命名變量的結構化方式,例如prefix_x
,否則沒有真正的方法。
推薦的方法是使用一個數組是這樣的:
$array = array(
"a" => 3,
"b" => 2,
"c" => 1,
"d" => 6
);
// Sort the array descending but keep the keys.
// http://php.net/manual/en/function.asort.php.
asort($array);
// Fetch the keys and get the second item (index 1).
// This is the key you are looking for per your question.
$second_key = array_keys($array)[1];
// Dumping the result to show it's the second lowest value.
var_dump($array[$second_key]); // int(2).
更符合你的問題,你可以創建數組喜歡這一行。
$array = array();
$array['variable_one'] = $variable_one;
$array['some_random_var'] = $some_random_var;
$array['foo'] = $foo;
$array['bar']= $bar;
// Same code as above here.
首先,您需要在數組中包含所有變量。你可以這樣做是這樣的:
$array = array(
'a' => 3,
'b' => 6,
'c' => 2,
'd' => 1
);
或者這樣說:
$array['a'] = 3;
$array['b'] = 6;
// etc
然後,你需要用natsort()對項目進行排序,以接收自然排序。
natsort($array);
然後,你的價值觀翻轉陣列的鍵(如果你希望的數值,請跳過此線)
$array = array_flip($array);
跳轉到下一個項目在Array在此之後(位置1 )通過使用next();
echo next($array);
在總讓一個漂亮的短腳本:
$array = array(
'a' => 3,
'b' => 6,
'c' => 2,
'd' => 1
);
natsort($array);
$array = array_flip($array);
echo next($array);
這是返回變量中的值而不是變量的名稱。 –
我剛剛更新了它:) – Bernhard
而不是使用4個變量爲4的整數值,您可以使用一個數組來存儲這些值。排序陣列並打印所述陣列的所述第二索引即1.
<?php
$x = array(2,3,1,6);
$i = 0, $j = 0, $temp = 0;
for($i = 0; $i < 4; $i++){
for($j=0; $j < 4 - $i; j++){
if($x[$j] > $x[$j+1]){
$temp = $x[$j];
$x[$j] = $x[$j+1];
$x[$j+1] = $temp;
}
}
}
for($j = 0; $j < 4; $j++){
echo $x[$j];
}
echo $x[1];
?>
似乎是一種非常無效的方式。 3 for循環,多個數組和變量:)。認爲你的解決方案是最需要內存的解決方案,但它可能會工作。 – Bram
- 1. 獲取具有最高/最大值的變量的名稱與PHP
- 2. r獲取具有最大值的變量名稱
- 3. 具有相同名稱的PHP變量
- 4. PHP - 如何獲取變量的名稱?
- 5. 確定具有最大值的變量的名稱
- 6. dplyr>獲取具有最小和最大變量的行
- 7. 在JavaScript中獲取從第二個變量中命名的變量的值
- 8. 獲取變量的名稱
- 9. 獲取最大的數組沒有第二個變量?
- 10. Excel:在第二列找到具有布爾值的最小值
- 11. 獲取多個最大變量名稱
- 12. 確定變量具有最高值和最低值
- 13. Angularjs獲取最大值的變量名稱
- 14. 只有變量名稱爲字符串時獲取變量值
- 15. 在RapidMiner中獲取具有最高值的屬性名稱
- 16. 在PHP中獲取變量名稱
- 17. js獲取php動態名稱變量
- 18. CMake - 如何獲取目錄名稱中的第二個最後?
- 19. 獲取名稱是第二個查詢結果的列的值
- 20. 按名稱獲取變量值
- 21. PHP從GET獲取多個具有相同名稱的值
- 22. 使用變量的名稱獲取變量的值,作爲變量值傳遞
- 23. SQL查詢獲取第三最低值
- 24. 如何獲得最低和第二最低行的每個組
- 25. 獲取名稱和值與PHP
- 26. JS:獲取變量名稱
- 27. Ruby:獲取變量名稱
- 28. 具有變量名稱的javascript數組
- 29. php解析具有多個變量的url與獲取請求
- 30. 獲取最小值php
訪問原始變量的代碼,你可以嘗試的你到目前爲止已經試過?在我們可以幫助之前,我們確實需要嘗試一下。 – MinistryofChaps
將它們放入數組中,對數組進行排序,並拉第二個索引。 – chris85
我已經搜索並試圖將它們放入數組中並對值進行排序。它返回的索引號不是變量的名稱。 –