zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

PHP排序 函数 分析 区别 Sort
2023-06-13 09:15:43 时间

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

  sort()

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

  例子:

  
  $arr=array("b","a","c");
  sort($arr);
  print_r($arr);
  ?>

  运行该例子输出:

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

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

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

  asort()
  PHPasort()函数用于对数组单元从低到高进行排序并保持索引关系,如果成功则返回TRUE,失败则返回FALSE。
  语法:
  boolasort(array&array[,intsort_flags])
  可选参数sort_flags用以改变排序的行为,具体参见sort()。
  例子:
  

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

  运行该例子输出:

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

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

  ksort()
  PHPksort()函数用于对数组单元按照键名从低到高进行排序,如果成功则返回TRUE,失败则返回FALSE。
  本函数会保留原来的键名,因此常用于关联数组。
  语法:
  boolksort(array&array[,intsort_flags])
  可选参数sort_flags用以改变排序的行为,具体参见sort()。
  例子:
  
  

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

  运行该例子输出:

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

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