怎么用PHP实现二维数组按照键值排序
本篇文章是关于用PHP实现二维数组按照键值排序的方法, 具有一定的参考价值,感兴趣的朋友一定要了解一下。
在开发过程中,我们常常需要对二维数组按照数组的某个键来排序,这里提供两个封装好的方法,可以放到公共函数模块里以后需要的时候直接调用即可。
- /**
- * 二维数组按照键值降序排序
- * @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');