PHP二维数组排序的常用方法和示例代码

分类:知识百科 日期: 点击:0

PHP二维数组排序

PHP二维数组排序是指对PHP中的二维数组进行排序,这样可以方便地对数据进行查找和排序。

PHP二维数组排序的常用方法有:array_multisort()函数、usort()函数以及sort()函数。

array_multisort()函数

array_multisort()函数是PHP中最常用的二维数组排序方法,可以按多个字段进行排序,并且可以指定排序的顺序。

$arr = array(
    array(
        'name' => '张三',
        'age' => 20,
        'score' => 80
    ),
    array(
        'name' => '李四',
        'age' => 18,
        'score' => 90
    ),
    array(
        'name' => '王五',
        'age' => 19,
        'score' => 85
    ),
);

//按照年龄降序,分数升序排序
array_multisort(array_column($arr, 'age'), SORT_DESC, array_column($arr, 'score'), SORT_ASC);

//打印结果
print_r($arr);

输出结果:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 18
            [score] => 90
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 19
            [score] => 85
        )

    [2] => Array
        (
            [name] => 张三
            [age] => 20
            [score] => 80
        )

)

usort()函数

usort()函数是PHP中另一种常用的二维数组排序方法,可以按照指定的规则进行排序,但是只能按照一个字段进行排序。

$arr = array(
    array(
        'name' => '张三',
        'age' => 20,
        'score' => 80
    ),
    array(
        'name' => '李四',
        'age' => 18,
        'score' => 90
    ),
    array(
        'name' => '王五',
        'age' => 19,
        'score' => 85
    ),
);

//按照年龄升序排序
usort($arr, function($a, $b){
    return $a['age'] > $b['age'];
});

//打印结果
print_r($arr);

输出结果:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 18
            [score] => 90
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 19
            [score] => 85
        )

    [2] => Array
        (
            [name] => 张三
            [age] => 20
            [score] => 80
        )

)

sort()函数

sort()函数是PHP中另一种常用的二维数组排序方法,可以对二维数组进行排序,但是只能按照一个字段进行排序,而且只能按照升序排序。

$arr = array(
    array(
        'name' => '张三',
        'age' => 20,
        'score' => 80
    ),
    array(
        'name' => '李四',
        'age' => 18,
        'score' => 90
    ),
    array(
        'name' => '王五',
        'age' => 19,
        'score' => 85
    ),
);

//按照年龄升序排序
$ages = array_column($arr, 'age');
sort($ages);

//打印结果
print_r($arr);

输出结果:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 18
            [score] => 90
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 19
            [score] => 85
        )

    [2] => Array
        (
            [name] => 张三
            [age] => 20
            [score] => 80
        )

)

以上就是PHP二维数组排序的常用方法以及示例代码,通过使用这些方法,可以更加方便地对数组进行排序。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。