Code前端首页关于Code前端联系我们

PHP sort()函数详解

terry 2年前 (2023-09-29) 阅读数 49 #PHP
文章标签 PHP

1. sort()

函数是什么

sort()函数是PHP中常用的数组排序函数。它可以按升序对数组进行排序。 sort()函数可以用在任何数组类型(数字、字符串等)上,但是在排序之前要注意数组的键和值的对应关系,避免键和值错位​​排序后变成值不匹配。

sort()函数提供两种排序方法:升序和降序。升序将值从小到大排序,降序将值从大到小排序。

2。 sort()

函数的语法和用法

sort()函数的语法如下:

    sort(array,sorttype);

下面,array参数代表要排序的数组,sorttype参数是可选参数,指定排序类型。这可以是以下三种类型之一:

  • SORT_REGULAR:按常规比较排序
  • SORT_NUMERIC:按数值比较排序
  • SORT_STRING:按字符串比较排序

如何使用sort()函数:

    $arr = array(5, 3, 1, 4, 2);
    sort($arr);

上面的代码按照默认的升序对数组 $arr 进行排序。

3。 sort()

函数的应用

1。对数字数组进行排序

以下是对一组数字进行排序的示例:

    $arr = array(5, 3, 1, 4, 2);
    sort($arr);//升序排列
    print_r($arr);

结果:

    Array
    (
        [0] => 1
        [1] => 2
        [2] => 3
        [3] => 4
        [4] => 5
    )

上例中,由于没有指定排序类型,所以使用默认的SORT_REGULAR进行排序。

2。对字符串数组进行排序

以下是对字符串数组进行排序的示例:

    $arr = array("lemon", "orange", "banana", "apple");
    sort($arr);//升序排列
    print_r($arr);

结果:

Array
(
    [0] => apple
    [1] => banana
    [2] => lemon
    [3] => orange
)

在上面的例子中,排序是基于字符串比较来完成的。

3。对关联数组进行排序

以下是对关联数组进行排序的示例:

    $arr = array(
        array("name"=>"Tom", "age"=>20),
        array("name"=>"John", "age"=>25),
        array("name"=>"Mary", "age"=>18)
    );
    array_multisort(array_column($arr,"name"),SORT_ASC,$arr);
    print_r($arr);

结果:

Array
(
    [0] => Array
        (
            [name] => John
            [age] => 25
        )

    [1] => Array
        (
            [name] => Mary
            [age] => 18
        )

    [2] => Array
        (
            [name] => Tom
            [age] => 20
        )

)

使用 array_multisort() 函数对关联数组进行排序。在此示例中,数组按名称的第一个字母升序排序。

4。 sort()函数需要注意的事项

使用sort()函数按升序排序时,请记住以下几点:

  • sort()函数改变了原数组的键值关系,使用前必须备份原数组;
  • sort()函数仅按值排序,您必须在程序本身中处理键值对应关系;
  • 如果使用 sort() 函数对关联数组进行排序,则必须使用 array_multisort() 函数并在第一个参数中指定要排序的键值。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门