php sort函数对数组进行排序。排序规则是按照数组元素进行升序排序。

基本语法

bool sort(array,sortingtype);

本函数对数组进行排序。当本函数结束时数组单元将被从最低到最高重新安排。

参数介绍

参数 描述
array 必需。要排序的数组。
sortingtype

可选。规定如何比较数组的元素/项目。可能的值:

  • 0 = SORT_REGULAR - 默认。把每一项按常规顺序排列(Standard ASCII,不改变类型)
  • 1 = SORT_NUMERIC - 把每一项作为数字来处理。
  • 2 = SORT_STRING - 把每一项作为字符串来处理。
  • 3 = SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。
  • 4 = SORT_NATURAL - 把每一项作为字符串来处理,使用类似 natsort() 的自然排序。
  • 5 = SORT_FLAG_CASE - 可以结合(按位或)SORT_STRING 或 SORT_NATURAL 对字符串进行排序,不区分大小写。

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。 

注意两点:

  1. sort 函数对数组中的元素赋与新的键名。这将删除原有的键名。
  2. 在对含有混合类型值的数组排序时要小心,因为 sort() 可能会产生不可预知的结果。

sort基本实例:

<?php
$fruits = array(\"lemon\", \"orange\", \"banana\", \"apple\");
sort($fruits);
foreach ($fruits as $key => $val) {
    echo \"fruits[\".$key.\"]=\".$val.\"<br/>\";
}
?> 

在线运行

运行结果:

fruits[0]=apple
fruits[1]=banana
fruits[2]=lemon
fruits[3]=orange

实例二:sort混合排序

本实例中定义了一个混合类型元素的数组,然后对数组进行排序:

<?php
$fruits = array(\'a\'=>\"1\", \'b\'=>\"orange\", \'c\'=>\"35\", \'d\'=>\"34\");
sort($fruits);
print_r($fruits);
?> 

在线运行

运行结果:

Array ( [0] => 1 [1] => 34 [2] => 35 [3] => orange )

从结果可以看出,数字将排在前面,字符串排在后面。

收藏 打印