php 中array_multisort()可以用來一次對多個陣列進行排序,或者根據某一維或多維對多維陣列進行排序。關聯鍵名保持不變,但數字鍵名會被重新索引。輸入陣列被當成乙個表的列並以行來排序,第乙個陣列是要排序的主要陣列。陣列中的行(值)比較為相同的話就按照下乙個輸入陣列中相應值的大小來排序,依此類推。
但是如果需要排序的陣列是乙個二維陣列,需要按照陣列的鍵值排序,如下面這個二維陣列,需要按照 sort 鍵名來排序,那麼array_multisort()就無法直接實現了:
$arr = array(
array(
'sort' => 3,
'a' => 'a',
'b' => 'b'
),array(
'sort' => 5,
'a' => 'a',
'b' => 'b'
),array(
'sort' => 1,
'a' => 'a',
'b' => 'b'
));
但是先把排序的列抽取出來,作為第乙個引數傳給 array_multisort,就可以實現上面的二維陣列的排序:
function _multi_array_sort($multi_array, $sort_key, $sort = sort_desc) else
}} else
array_multisort($key_array, $sort, $multi_array);
return $multi_array;
}var_dump(_multi_array_sort($arr, 'sort'));
PHP二維陣列按鍵值排序
出處 php 中 array multisort 可以用來一次對多個陣列進行排序,或者根據某一維或多維對多維陣列進行排序。關聯鍵名保持不變,但數字鍵名會被重新索引。輸入陣列被當成乙個表的列並以行來排序,第乙個陣列是要排序的主要陣列。陣列中的行 值 比較為相同的話就按照下乙個輸入陣列中相應值的大小來排...
php二維陣列按照某個鍵值排序
php二維陣列按照某個鍵值排序 arr array name 小壞龍 age 28 array name 小壞龍2 age 14 array name 小壞龍3 age 59 array name 小壞龍4 age 23 array name 小壞龍5 age 23 array name 小壞龍6 ...
php二維陣列按照鍵值排序的方法
1 需要排序的陣列如下 array array array name 手機 brand 諾基亞 price 1050 array name 膝上型電腦 brand lenovo price 4300 array name 剃鬚刀 brand 飛利浦 price 3100 array name 跑步機...