在 PHP 中,使用自有函數對陣列按值排序並保留鍵名的方法是:取得陣列的所有值並按其排序。取得排序後的值的鍵。將排序後的值與原數組的鍵重新組合。
在PHP 中使用自有函數將陣列依值排序,保留鍵名
前言
在PHP 中,sort()
函數可以將陣列依值排序。但是,該函數會破壞鍵名。為了保留鍵名,我們需要使用自有函數。
自有函數
以下自有函數可以依值對陣列排序,同時保留鍵名:
function sortByValue(array $array) { $sortedValues = array_column($array, null); asort($sortedValues); $sortedKeys = array_keys($sortedValues); return array_combine($sortedKeys, $array); }
實戰案例
以下範例示範如何對包含鍵名的陣列進行排序:
$array = [ 'apple' => 10, 'banana' => 20, 'orange' => 5 ]; $sortedArray = sortByValue($array); print_r($sortedArray);
#輸出結果為:
Array ( [orange] => 5 [apple] => 10 [banana] => 20 )
如你所看到的,陣列會以值升序排序,同時保留了鍵名。
以上是在 PHP 中使用自有函數對陣列按值排序,保留鍵名的詳細內容。更多資訊請關注PHP中文網其他相關文章!