在開發(fā)過程中,我們常常需要對二維數(shù)組按照數(shù)組的某個鍵來排序,這里提供兩個封裝好的方法,可以放到公共函數(shù)模塊里以后需要的時候直接調(diào)用即可。
二維數(shù)組本質(zhì)上是以數(shù)組作為數(shù)組元素的數(shù)組,即“數(shù)組的數(shù)組”,類型說明符 數(shù)組名[常量表達(dá)式][常量表達(dá)式]。二維數(shù)組又稱為矩陣,行列數(shù)相等的矩陣稱為方陣。對稱矩陣a[i][j] = a[j][i],對角矩陣:n階方陣主對角線外都是零元素。
以下是具體代碼:
/
* 二維數(shù)組按照鍵值降序排序
* @param array $arr 待排序數(shù)組
* @param string $key 鍵值
* @return mixed
*/
function sortbykeydesc($arr, $key) {
array_multisort(array_column($arr, $key), sort_desc, $arr);
return $arr;
}
/
* 二維數(shù)組按照鍵值升序排序
* @param array $arr 待排序數(shù)組
* @param string $key 鍵值
* @return mixed
*/
function sortbykeyasc($arr, $key) {
array_multisort(array_column($arr, $key), sort_asc, $arr);
return $arr;
}
$arr = [
['name' => 'itbsl', 'priority' => 23],
['name' => 'jack', 'priority' => 3],
['name' => 'rose', 'priority' => 12],
['name' => 'pick', 'priority' => 45],
['name' => 'binbin', 'priority' => 68],
['name' => 'didi', 'priority' => 56789],
['name' => 'mobike', 'priority' => 0],
];
//把數(shù)組arr按照priority的值降序(從大到小)排序
$result = sortbykeydesc($arr, 'priority');
注冊域名在哪個網(wǎng)站蘇州阿里云服務(wù)器低價華為智慧屏能安裝云極光嗎 華為智慧屏怎么下載云極光云服務(wù)器ip共享和獨(dú)立有什么區(qū)別域名最短多少位阿里云服務(wù)器什么時候優(yōu)惠的Linux操作系統(tǒng)的基礎(chǔ)知識管家皮服務(wù)器如何掛接云數(shù)據(jù)庫