sort()&rsort()&ksort()&asort()&arsort()&krsort()

升序:从低到高

降序:从高到低

sort()

对数组按照值进行升序排序,将会删除原有的键名,并重新赋予新的建名

rsort()

对数组按照值进行降序排序,将会删除原有的键名,并重新赋予新的建名

ksort()

对数组按照键名进行升序排序,保留原有的建名跟值的对应关系

krsort()

对数组按照键名进行降序排序,保留原有的建名跟值的对应关系

asort()

对数组按照值进行升序排序,保留原有的建名跟值的对应关系

arsort()

对数组按照值进行降序排序,保留原有的建名跟值的对应关系


示例:

  1. <?php
  2. //create the movies
  3. $movies=array(
  4. ‘gangtiexia‘ =>10,
  5. ‘jianbingxia‘=>10,
  6. ‘zhuzhuxia‘=>6,
  7. ‘doupo‘=>9,
  8. ‘dota‘=>7
  9. );
  10. //初始数组
  11. echo ‘<tr><td><b>original order</b></td></tr><br>‘;
  12. foreach ($movies as $title => $grade) {
  13. # code...
  14. echo "<tr><td>$grade</td>
  15. <td>$title</td></tr><br>";
  16. }
  17. echo "<hr>";
  18. //ksort()排序
  19. echo ‘<tr><td ><b>ksort by title</b></td></tr><br>‘;
  20. ksort($movies);
  21. foreach ($movies as $title => $grade) {
  22. # code...
  23. echo "<tr><td>$grade</td>
  24. <td>$title</td></tr><br>";
  25. }
  26. //krsort()排序
  27. echo ‘<tr><td ><b>krsort by title</b></td></tr><br>‘;
  28. krsort($movies);
  29. foreach ($movies as $title => $grade) {
  30. # code...
  31. echo "<tr><td>$grade</td>
  32. <td>$title</td></tr><br>";
  33. }
  34. echo "<hr>";
  35. //asort()排序
  36. echo ‘<tr><td><b>asort by grade</b></td></tr><br>‘;
  37. asort($movies);
  38. foreach ($movies as $title => $grade) {
  39. # code...
  40. echo "<tr><td>$grade</td>
  41. <td>$title</td></tr><br>";
  42. }
  43. //arsort()排序
  44. echo ‘<tr><td><b>arsort by grade</b></td></tr><br>‘;
  45. arsort($movies);
  46. foreach ($movies as $title => $grade) {
  47. # code...
  48. echo "<tr><td>$grade</td>
  49. <td>$title</td></tr><br>";
  50. }
  51. echo "<hr>";
  52. //sort()排序
  53. echo ‘<tr><td><b>sort by </b></td></tr><br>‘;
  54. sort($movies);
  55. foreach ($movies as $title => $grade) {
  56. # code...
  57. echo "<tr><td>$grade</td>
  58. <td>$title</td></tr><br>";
  59. }
  60. //rsort()排序
  61. echo ‘<tr><td><b>rsort by </b></td></tr><br>‘;
  62. rsort($movies);
  63. foreach ($movies as $title => $grade) {
  64. # code...
  65. echo "<tr><td>$grade</td>
  66. <td>$title</td></tr><br>";
  67. }
  68. ?>

结果:

来自为知笔记(Wiz)

sort()&rsort()&ksort()&asort()&arsort()&krsort()

时间: 2024-10-29 00:01:01

sort()&rsort()&ksort()&asort()&arsort()&krsort()的相关文章

PHP 数组排序函数sort,rsort,ksort,krsort,asort,arsort区别

一.概念:    1.自然排序法:即按自然数的大小排序,例如“10>2”;    2.计算机标准排序法:是以逐个字符比较,排序,例如“2>10”(因为第一位2>1):    3.数值数组:带有数字 ID 键的数组:    4.关联数组:带有指定的键的数组,每个键关联一个值.    5.默认的排序为按键值升序排序,排序方式为自然排序. 二.[帮助理解] 1.a(association)前缀表示以键值关联排序: 2.k(key)前缀表示以键名关联排序: 3.r(reverse)前缀表示以反方

sort,ksort,asort的区别

sort--对数组的val进行排序 ksort--对数组的key值进行排序 asort--对数组进行排序,键与值的对应关系不变 1.sort对数组排序 格式如下:bool sort(array &$array[,int $sort_flags]) 使用这个函数结束后单元将被从低到最高重新安排 返回boolean $sort_flags这个参数是在php4加入进来的,可以用以下值改变排序的行为 排序类型标记: SORT_REGULAR-正常比较单元(不改变类型) SORT_NUMERIC-单元被作

PHP中的数组(二)常用数组处理函数

数组的相关处理函数    一.数组键/值操作有关的函数        1.array_values()   无论是关联的还是索引的返回的都是索引数组 1 <?php 2 $lamp=array("os"=>"Linux","webserver"=>"Apache","db"=>"Mysql","language"=>"php&q

PHP基础知识6【系统内置函数--数组】

数组的相关处理函数    一.数组键/值操作有关的函数        1.array_values()   无论是关联的还是索引的返回的都是索引数组 1 <?php 2 $lamp=array("os"=>"Linux","webserver"=>"Apache","db"=>"Mysql","language"=>"php&q

PHP知识点总结2

PHP5数据类型 String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值). 字符串 你可以将任何文本放在单引号和双引号中: <?php $x = "Hello world!"; echo $x; echo "<br>"; $x = 'Hello world!'; //单引号 包括字符串字面量 双引号包含的字符串 可包含变量 echo $x

PHP 数组详解之函数【一】

1.         判断查找in_array()函数判断数组是否包含某元素:array_search()在数组中搜索特定值并返回索引号/键名,如果不存在则返回false. 2.         数组排序sort()/rsort()保持键的位置,依值排序:asort()/arsort()依值排序,保持键值对应:ksort()/krsort()依键排序,保持键值对应:natsort()/natcasesort()按自然顺序重排,保持键值对应:shuffle()随机排序.array_reverse(

PHP 数组排序方法总结

sort:本函数为 array 中的单元赋予新的键名.这将删除原有的键名而不仅是重新排序. rsort:本函数对数组进行逆向排序(最高到最低). 删除原有的键名而不仅是重新排序. asort:对数组进行排序并保持索引关系 arsort:对数组进行逆向排序并保持索引关系 ksort:对数组按照键名排序,保留键名到数据的关联 krsort:对数组按照键名逆向排序,保留键名到数据的关联 natsort:对字母数字字符串进行排序并保持原有键/值的关联 natcasesort:同natsort排序算法,但

6-6-1-php数组相关(2)

1.for比较少用遍历连续数字下标的数组,和c语言差不多,简单记录一下: for(int $i=0;$i<count($arr);$i++){.....$arr[$i]......} 2.php有专门遍历数组而设计的foreach语句 foreach( $arr as $value ){} foreach( $arr as $key=>$value){} 多维:使用嵌套 foreach ( $arr as $key => $arr1 ){ foreach($arr1 as $value

php核心知识纲要总结以及学习路线

php介绍 缩写:Personal Home Page ==>>PHP:HypeText Preprocessor 历史 1995PHP/FI,Rasmus Lorderf,Personal Home Page 1997PHP/FI2.0,1998PHP3,2000PHP4,2005PHP5 应用范围: web服务器端脚本 命令行脚本 应用程序图形界面 php运行环境 BS软件模式 浏览器软件若干 web服务器软件若干 后台程序语言若干 web运行流程: 浏览器输入地址,回车(发送请求) 根据