略微加速

略速 - 互联网笔记

PHP数组排序

2020-11-12 leiting (2896阅读)

标签 PHP

排序

sort:本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。 

rsort:本函数对数组进行逆向排序(最高到最低)。 删除原有的键名而不仅是重新排序。 



按值排序

asort:对数组进行排序并保持索引关系 

arsort:对数组进行逆向排序并保持索引关系 

参数 描述

array 必需。输入的数组。

sorttype

可选。规定如何排列数组的值。可能的值:

SORT_REGULAR - 默认。以它们原来的类型进行处理(不改变类型)。

SORT_NUMERIC - 把值作为数字来处理

SORT_STRING - 把值作为字符串来处理

SORT_LOCALE_STRING - 把值作为字符串来处理,基于本地设置*。


<?php

$arr=array(

        'a'=>1,

        'b'=>50,

        'c'=>34,

        'd'=>100,

);

print_r($arr);

asort($arr);

print_r($arr);

arsort($arr);

print_r($arr);

复制代码

Array

(

    [a] => 1

    [b] => 50

    [c] => 34

    [d] => 100

)

Array

(

    [a] => 1

    [c] => 34

    [b] => 50

    [d] => 100

)

Array

(

    [d] => 100

    [b] => 50

    [c] => 34

    [a] => 1

)

复制代码


按键排序

ksort:对数组按照键名排序,保留键名到数据的关联 

krsort:对数组按照键名逆向排序,保留键名到数据的关联 



字符串排序

natsort:对字母数字字符串进行排序并保持原有键/值的关联 

natcasesort:同natsort排序算法,但不区分大小写字母排序 


natsort() 函数实现了“自然排序”,即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先。数组的索引与单元值保持关联。

如果成功,则该函数返回 TRUE,否则返回 FALSE。

例子

本函数所用的自然排序算法,与通常的计算机字符串排序算法(用于 sort())的区别,见下面示例:

<?php$temp_files = array("temp15.txt","temp10.txt","temp1.txt","temp22.txt","temp2.txt");
sort($temp_files);
echo "Standard sorting: ";
print_r($temp_files);
echo "<br />";
natsort($temp_files);
echo "Natural order: ";
print_r($temp_files);
?>

输出:

Standard sorting:
Array(
[0] => temp1.txt
[1] => temp10.txt
[2] => temp15.txt
[3] => temp2.txt
[4] => temp22.txt
)
Natural order: 
Array(
[0] => temp1.txt
[3] => temp2.txt
[1] => temp10.txt
[2] => temp15.txt
[4] => temp22.txt
)


北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3