`

PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析

    博客分类:
  • PHP
阅读更多
http://www.jb51.net/article/53861.htm
在php中自带了大量了数组排序函数,下面我们一一来介绍一下关于php数组排序的用法吧。

  sort() 函数用于对数组单元从低到高进行排序。
  rsort() 函数用于对数组单元从高到低进行排序。
  asort() 函数用于对数组单元从低到高进行排序并保持索引关系。
  arsort() 函数用于对数组单元从高到低进行排序并保持索引关系。
  ksort() 函数用于对数组单元按照键名从低到高进行排序。
  krsort() 函数用于对数组单元按照键名从高到低进行排序。

  sort()

  PHP sort() 函数用于对数组单元从低到高进行排序,如果成功则返回 TRUE,失败则返回 FALSE。
  注意:本函数会为排序的数组中的单元赋予新的键名,这将删除原有的键名而不仅是重新排序。
  语法:
  bool sort( array &array [, int sort_flags] )
  可选参数 sort_flags 用于改变排序的行为:
  sort_flags 取值 说明
  SORT_REGULAR 正常比较单元
  SORT_NUMERIC 单元被作为数字来比较
  SORT_STRING 单元被作为字符串来比较
  SORT_LOCALE_STRING 根据当前的区域(locale)设置来把单元当作字符串比较

  例子:

1
2
3
4
5
  
  $arr = array("b", "a", "c");
  sort($arr);
  print_r($arr);
  ?>

  运行该例子输出:

1
  Array ( [0] => a [1] => b [2] => c )

  在本例中, $arr 数组单元被按照字母顺序排序,而数组单元经过排序后,键值重新分配。

  rsort()
  PHP rsort() 函数行为与 sort() 相反,对数组单元进行由高到低排序,请参考 sort() 函数使用。

  asort()
  PHP asort() 函数用于对数组单元从低到高进行排序并保持索引关系,如果成功则返回 TRUE,失败则返回 FALSE。

  语法:
  bool asort( array &array [, int sort_flags] )
  可选参数 sort_flags 用以改变排序的行为,具体参见 sort()。
  例子:
  

1
2
3
4
  $arr = array("b", "a", "c");
  asort($arr);
  print_r($arr);
  ?>

  运行该例子输出:

1
  Array ( [1] => a [0] => b [2] => c )

  arsort()
  PHP arsort() 函数行为与 asort() 相反,对数组单元进行由高到低排序并保持索引关系,请参考 asort() 函数使用。

  ksort()
  PHP ksort() 函数用于对数组单元按照键名从低到高进行排序,如果成功则返回 TRUE,失败则返回 FALSE。

  本函数会保留原来的键名,因此常用于关联数组。
  语法:
  bool ksort( array &array [, int sort_flags] )
  可选参数 sort_flags 用以改变排序的行为,具体参见 sort()。
  例子:
  
  

1
2
3
4
$arr = array("b"=>18, "a"=>20, "c"=>25);
  ksort($arr);
  print_r($arr);
  ?>

  运行该例子输出:

1
  Array ( [a] => 20 [b] => 18 [c] => 25 )

  krsort()
  PHP krsort() 函数行为与 ksort() 相反,对数组单元按照键名进行由高到低排序,请参考 ksort() 函数使用。

如对本文有疑问,请提交到交流社区,广大热心网友会为你解答!! 点击进入社区

分享到:
评论

相关推荐

    PHP数组排序之sort、asort与ksort用法实例

    本文实例讲解了PHP数组排序中sort、asort与ksort的用法,供大家参考借鉴之用。具体实例如下所示: <?php $arr = array('d'=>'sdf', 'r'=>'sdf', 'a'=> 'eee'); //sort($arr); // 对数组的值进行重排, 删除之前的...

    常用PHP数组排序函数归纳

     •asort() – 根据值,以升序对关联数组进行排序  •ksort() – 根据键,以升序对关联数组进行排序  •arsort() – 根据值,以降序对关联数组进行排序  •krsort() – 根据键,以降序对关联数组进行排序  ...

    PHP 数组排序

    asort() – 根据关联数组的值,对数组进行升序排列 ksort() – 根据关联数组的键,对数组进行升序排列 arsort() – 根据关联数组的值,对数组进行降序排列 krsort() – 根据关联数组的键,对数组进行降序排列 ...

    php数组函数序列之rsort() - 对数组的元素值进行降序排序

    rsort() 函数对数组的元素按照键值进行逆向排序。与 arsort() 的功能基本相同。注释:该函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。

    PHP 数组排序方法总结 推荐收藏

    asort:对数组进行排序并保持索引关系 arsort:对数组进行逆向排序并保持索引关系 ksort:对数组按照键名排序,保留键名到数据的关联 krsort:对数组按照键名逆向排序,保留键名到数据的关联 natsort:对字母

    php数组函数序列之rsort() – 对数组的元素值进行降序排序

    rsort()定义和用法 rsort() 函数对数组的元素按照键值进行逆向排序。与 arsort() 的功能基本相同。 注释:该函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。 如果成功则返回 TRUE,否则...

    php网络开发完全手册

    8.4.2 递减排序——rsort 125 8.4.3 数组排序——array_multisort 126 8.5 几种数组的应用实例 127 8.5.1 顺序查找 127 8.5.2 二分法查找 128 8.5.3 使用array_search函数进行查找 129 8.5.4 线性表的入栈与出栈 129...

    Python库 | rsort-0.1.2.tar.gz

    python库。 资源全名:rsort-0.1.2.tar.gz

    PHP查找数值数组中不重复最大和最小的10个数的方法

    本文实例讲述了PHP查找数值数组中不重复最大和最小的10个数的方法。分享给大家供大家参考。具体如下: 1. php代码如下: //随机生成1万个元素的数组 for($i=0;$i<10000;$i++){ $ary[]=rand(1,100000); } $ary=...

    求PHP数组最大值,最小值的代码

    复制代码 代码如下: <?php $fruits = array(“155::[removed]:https://www.jb51.net/list/list_114_1.htm”, “1::[removed]:... rsort($fruits,SORT_NUMERIC); print_r($fruits);

    PHP上传图片例子

    //修改日期倒序排序 } for($j=$imgnums*$page; $j<($imgnums*$page+$imgnums)&&$j<$i; ++$j){ echo '<div>'; echo $array[$j].' '; $img_info = getimagesize($path.$array[$j]); echo $img_info[0].' ';...

    PHP数组操作——获取数组最后一个值的方法

    php开发过程中,可能经常需要对取出的数组要获取数组的最后健或值。在这里软件开发网总结了三个方法,并且跟据他们三个方法在一些情况下如何使用的条件限制进行了说明。 <?php $array=array(1,2,3,4,5); echo $...

Global site tag (gtag.js) - Google Analytics