PHP多维数组指定多字段排序

发布时间:2022-07-20 15:25:12    发布者:文昌文城莱奥网络技术工作室    浏览次数:940

    // 假设我们有一个二维数组 $arr,包含 name、age 和 score 三个字段
        $arr = array(
            array('name' => 'Tom', 'age' => 18, 'score' => 90),
            array('name' => 'Jerry', 'age' => 20, 'score' => 80),
            array('name' => 'Mike', 'age' => 19, 'score' => 85)
        );

        // 首先按照 age 升序排列,如果 age 相同则按照 score 降序排列
        // 注意第二个参数是一个常量,表示要按照升序(SORT_ASC)还是降序(SORT_DESC)排列
        // 最后一个参数是要排序的字段,如果有多个字段需要排序,则使用多个参数
        array_multisort(array_column($arr, 'age'), SORT_ASC, array_column($arr, 'score'), SORT_DESC, $arr);

        // 排序后的数组
        print_r($arr);


https://blog.csdn.net/u011348776/article/details/52818154?spm=1001.2101.3001.6650.11&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-11-52818154-blog-125453708.pc_relevant_aa&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-11-52818154-blog-125453708.pc_relevant_aa&utm_relevant_index=12