在开发过程中,我们常常需要对二维数组按照数组的某个键来排序,这里提供两个封装好的方法,可以放到公共函数模块里以后需要的时候直接调用即可。
二维数组本质上是以数组作为数组元素的数组,即“数组的数组”,类型说明符 数组名[常量表达式][常量表达式]。二维数组又称为矩阵,行列数相等的矩阵称为方阵。对称矩阵a[i][j] = a[j][i],对角矩阵:n阶方阵主对角线外都是零元素。
以下是具体代码:
/
* 二维数组按照键值降序排序
* @param array $arr 待排序数组
* @param string $key 键值
* @return mixed
*/
function sortbykeydesc($arr, $key) {
array_multisort(array_column($arr, $key), sort_desc, $arr);
return $arr;
}
/
* 二维数组按照键值升序排序
* @param array $arr 待排序数组
* @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],
];
//把数组arr按照priority的值降序(从大到小)排序
$result = sortbykeydesc($arr, 'priority');
注册域名在哪个网站苏州阿里云服务器低价华为智慧屏能安装云极光吗 华为智慧屏怎么下载云极光云服务器ip共享和独立有什么区别域名最短多少位阿里云服务器什么时候优惠的Linux操作系统的基础知识管家皮服务器如何挂接云数据库