php按某个字段对二维数组进行排序

PHP 投稿 21100 0 评论

php按某个字段对二维数组进行排序

php二维数组按某个字段排序。

如需要将以下user_list变量按照第二维的字段age排序,则可以:

$user_list = [
    ['name' => '张三', 'age' => 28],
    ['name' => '李四', 'age' => 21],
    ['name' => '王五', 'age' => 20],
    ['name' => '赵六', 'age' => 21]
];

按升序排列:

array_multisort(array_column($user_list, 'age'), SORT_ASC, $user_list);

结果:

Array
(
    [0] => Array
        (
            [name] => 王五
            [age] => 20
        )

  [1] => Array
        (
            [name] => 李四
            [age] => 21
        )

  [2] => Array
        (
            [name] => 赵六
            [age] => 21
        )

  [3] => Array
        (
            [name] => 张三
            [age] => 28
        )

)

说明:

array_column(数组, 数组中的某个键值) 从二维维数组中取出某个键值的一列  返回一个一维数组;

array_multisort() 可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序。关联(string)键名保持不变,但数字键名会被重新索引。

编程笔记 » php按某个字段对二维数组进行排序

赞同 (95) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽