首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

sort

(PHP 4, PHP 5, PHP 7)

sort - 对数组进行排序

描述

代码语言:javascript
复制
bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

这个函数对一个数组进行排序。此功能完成后,元素将从低到高排列。

注意:如果两个成员比较相等,则它们在已排序数组中的相对顺序是未定义的。

参数

array

输入数组。

sort_flags

可选的第二个参数sort_flags可用于使用这些值修改排序行为:

排序类型标志:

  • SORT_REGULAR - 通常比较项目(不要更改类型)
  • SORT_NUMERIC - 用数字比较项目
  • SORT_STRING - 比较项目作为字符串
  • SORT_LOCALE_STRING - 根据当前语言环境将项目作为字符串进行比较。它使用语言环境,可以使用setlocale()进行更改
  • SORT_NATURAL - 比较项目作为字符串使用“自然排序”,如natsort()
  • SORT_FLAG_CASE-可以被组合(按位或)用SORT_STRINGSORT_NATURAL以不区分大小写的字符串进行排序

返回值

TRUE成功或FALSE失败时返回。

更新日志

版本

描述

5.4.0

作为sort_flags添加了对SORT_NATURAL和SORT_FLAG_CASE的支持

5.0.2

添加了SORT_LOCALE_STRING

例子

示例#1 sort()示例

代码语言:javascript
复制
<?php

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

?>

上面的例子将输出:

代码语言:javascript
复制
fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange

水果按字母顺序排序。

示例#2使用不区分大小写的自然排序的sort()示例

代码语言:javascript
复制
<?php

$fruits = array(
    "Orange1", "orange2", "Orange3", "orange20"
);
sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);
foreach ($fruits as $key => $val) {
    echo "fruits[" . $key . "] = " . $val . "\n";
}

?>

上面的例子将输出:

代码语言:javascript
复制
fruits[0] = Orange1
fruits[1] = orange2
fruits[2] = Orange3
fruits[3] = orange20

水果已经像natcasesort()一样排序。

笔记

注意:此函数为新元素分配新元素array。它将删除可能已分配的所有现有密钥,而不仅仅是重新排序密钥。

注意:与大多数PHP排序函数一样,sort()使用»Quicksort的实现。主键在分区中间选择,为已排序的数组创建最佳时间。然而,这是您不应该依赖的实现细节。

警告

当对具有混合类型值的数组进行排序时要小心,因为sort()会产生不可预知的结果。

也可以看看

  • asort() - 对数组进行排序并保持索引关联

← sizeof

uasort →

扫码关注腾讯云开发者

领取腾讯云代金券