PHP 数组排序
数组中的元素可以按字母或数字顺序进行降序或升序排列。
升序:从小到大的顺序进行排序,如果是英文单词,那么按字母A-Za-z的顺序排序,如果是数字,那么按数字的大小进行排序。
降序:与升序相反
数组排序函数
在本章中,我们将一一介绍下列 PHP 数组排序函数:
· sort() - 对数组进行升序排列
· rsort() - 对数组进行降序排列
· asort() - 根据关联数组的值,对数组进行升序排列
· ksort() - 根据关联数组的键,对数组进行升序排列
· arsort() - 根据关联数组的值,对数组进行降序排列
· krsort() - 根据关联数组的键,对数组进行降序排列
sort()函数
注:sort大多是用来排序数字索引数组的,如果把一个关联数组放到sort里排序,那么数组的键会丢失
实例
下面的实例将数组中的元素按照升序排列:
<?php $sum=array(100,25,85,68,Y,M,w,s,a,H,45,A,P); sort($sum); print_r($sum); ?>
下面是程序运行结果:
通过上面的例子可以看出来,我们已经用sort()函数,对数组进行了升序排序,你不妨将sort()函数 换成rsort() 看看有什么变化吧。
小思考
既然关联数组不能使用sort来排序,那么应该使用什么函数呢?
这就要用到我们下面所学的asort()函数了
asort()函数
实例
下面的实例根据数组的值,对关联数组进行升序排列:
<?php $age=array("Tom"=>"25","Andy"=>"18","Joe"=>"23","Ben"=>"28"); asort($age); print_r($age); ?>
通过上面例子的运行结果我们可以看到asort()函数实际上是使用数组的值进行排序的,那么如果想对键进行排序,我们可以使用
ksort()函数
ksort()函数
实例
下面的实例根据数组的键,对关联数组进行升序排列:
<?php $age=array("Tom"=>"25","Andy"=>"18","Joe"=>"23","Ben"=>"28"); ksort($age); print_r($age); ?>
上面的几个例子我们都是对数组进行升序排序,你们不妨试着看进行对数组进行降序排序,用法都是相同的。试试看吧
完整的 PHP 数组参考手册
如需完整的数组函数参考手册,请访问我们的 PHP 数组参考手册。
该参考手册包含每个函数的简要描述、使用示例。