PHP数组排序
PHP 数组排序
数组中的元素可以按字母或数字顺序进行降序或升序排列。
PHP - 数组排序函数
在本章中,我们将一一介绍下列 PHP 数组排序函数:
· sort() - 对数组进行升序排列
· rsort() - 对数组进行降序排列
· asort() - 根据关联数组的值,对数组进行升序排列
· ksort() - 根据关联数组的键,对数组进行升序排列
· arsort() - 根据关联数组的值,对数组进行降序排列
· krsort() - 根据关联数组的键,对数组进行降序排列
· shuffle() - 对数组中的元素进行随机的排序
· array_reverse() -反序是将一个原始的数组中的每个元素的顺序翻转
sort() - 对数组进行升序排列
下面的实例将 $cars 数组中的元素按照字母升序排列:
实例
<?php $cars=array("Volvo","BMW","Toyota"); sort($cars); ?>
下面的实例将 $numbers 数组中的元素按照数字升序排列:
实例
<?php $numbers=array(4,6,2,22,11); sort($numbers); ?>
rsort() - 对数组进行降序排列
下面的实例将 $cars 数组中的元素按照字母降序排列:
实例
<?php $cars=array("Volvo","BMW","Toyota"); rsort($cars); ?>
下面的实例将 $numbers 数组中的元素按照数字降序排列:
实例
<?php $numbers=array(4,6,2,22,11); rsort($numbers); ?>
asort() - 根据数组的值,对数组进行升序排列
下面的实例根据数组的值,对关联数组进行升序排列:
实例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); asort($age); ?>
ksort() - 根据数组的键,对数组进行升序排列
下面的实例根据数组的键,对关联数组进行升序排列:
实例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); ksort($age); ?>
arsort() - 根据数组的值,对数组进行降序排列
下面的实例根据数组的值,对关联数组进行降序排列:
实例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); arsort($age); ?>
krsort() - 根据数组的键,对数组进行降序排列
下面的实例根据数组的键,对关联数组进行降序排列:
实例
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); krsort($age); ?>
shuffle() - 对数组中的元素进行随机的排序
使用shuffle函数可以对数组中的元素进行随机的排序 bool shuffle ( array &$array )
<?php $my_array = array("red","green","blue","yellow","purple");shuffle($my_array); print_r($my_array); ?>
每次执行上面的代码,输出的顺序各不相同,我们用来实现随机的排名
注意:关联数组被shuffle后,键会丢失
array_reverse() -反序是将一个原始的数组中的每个元素的顺序翻转
反序 ≠ 降序
反序是将一个原始的数组中的每个元素的顺序翻转
array array_reverse ( array $array [, bool $preserve_keys = false ] )
如果数组是关联数组
• 键为字符时反序不受影响,键仍然会保留
• 键是数字时,反序后默认键会重置为0、1、2……
• 第二个参数为true时,键为数字,反序保留数字键
<?php $names = array(10 => '张三', 60 => '阿毛', 30 => '李四', 25 => '宝哥'); print_r(array_reverse($names)); print_r(array_reverse($names, true)); ?>
完整的 PHP Array 参考手册
如需查看所有数组函数的完整参考手册,请访问我们的 PHP Array 参考手册。
该参考手册提供了每个函数的简要描述和应用实例!