• PHP asort():对数组排序(升序),并保持索引关系

    PHP asort() 函数用来对数组元素进行升序排序(也就是从低到高排序),并保持索引关系。

    asort() 是 sort() 的增强版,asort() 除了能保持值和索引的对应关系,其它功能和 sort() 一样。asort() 主要用于那些特别重视值和索引关系的数组排序。

    asort() 语法如下:

    bool asort ( array &$arr [, int $sort_mode = SORT_REGULAR ] )

    参数说明:

    • arr 是要排序的数组。
    • sort_mode 表示排序模式,是一个可选参数。sort_mode 可以使用如下的值:

      • SORT_REGULAR:正常比较元素,不改变元素的类型(默认值)。
      • SORT_NUMERIC:元素被作为数字来比较。
      • SORT_STRING:元素被作为字符串来比较。
      • SORT_LOCALE_STRING:根据当前的区域(locale)设置把元素当作字符串比较,可以用 setlocale() 来改变。
      • SORT_NATURAL:和 natsort() 类似,对每个元素以“自然的顺序”对字符串进行排序,是 PHP 5.4.0 中新增的一个参数。
      • SORT_FLAG_CASE:能够与 SORT_STRING 或 SORT_NATURAL 合并(OR 位运算),不区分大小写排序字符串。

    sort() 函数调用结束后, arr 数组元素会按照从低到高的顺序重新排列,并保持值和索引的关系。

    返回值:排序成功返回 TRUE,失败返回 FALSE。

    与数组排序相关的函数
    函数 说明
    sort() 对数组元素进行升序排序(从小到大)。
    rsort() 对数组元素进行降序排序(从大到小)。
    asort() 对数组元素进行升序排序(从小到大),并保持索引关系。
    arsort() 对数组元素进行降序排序(从大到小),并保持索引关系。
    shuffle() 对数组元素进行随机排序,也就是随机打乱数组。

    【实例】asort() 和 sort() 的对比:

    <?php
    $info = array(
        "url" => "http://c.biancheng.net/php/",
        "language" => "PHP",
        "update" => "2019-10-29",
        "author" => "changsheng yan"
    );
    $info_copy = $info;
    sort($info, SORT_STRING);
    print_r($info);
    asort($info_copy, SORT_STRING);
    print_r($info_copy);
    ?>

    运行结果:

    Array
    (
        [0] => 2019-10-29
        [1] => PHP
        [2] => changsheng yan
        [3] => http://c.biancheng.net/php/
    )
    Array
    (
        [update] => 2019-10-29
        [language] => PHP
        [author] => changsheng yan
        [url] => http://c.biancheng.net/php/
    )

更多...

加载中...