PHP二维数组按照键值排序

2018-11-09 02:39:01来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

在开发过程中,我们常常需要对二维数组按照数组的某个键来排序,这里提供两个封装好的方法,可以放到公共函数模块里以后需要的时候直接调用即可。

/**
 * 二维数组按照键值降序排序
 * @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],
];

$result = sortByKeyDesc($arr, 'priority');

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:[日常] HTTP连接管理

下一篇:解决ci框架php发送邮件附件中文乱码问题