sort,rsort,ksort,krsort,asort,arsort函数用来对数组进行排序,本篇笔记对这6个函数的功能区别,传入参数和返回值进行了介绍,并通过范例加深了解他们之间的区别
函数功能
函数 | 功能 |
---|---|
sort | 按数组的值进行升序排序 |
rsort | 按数组的值进行降序排序 |
ksort | 按数组的键进行升序排序,并保留键值关系 |
krsort | 按数组的键进行降序排序,并保留键值关系 |
asort | 按数组的值进行升序排序,并保留键值关系 |
arsort | 按数组的值进行降序排序,并保留键值关系 |
参数介绍
函数名 ( array &$array [, int $sort_flags = SORT_REGULAR ] ) : bool
以上6个函数的传入参数和返回值相同
传入参数
&$array
- 必须传入要排序的数组的引用
$sort_flags
- 可选传入改变排序的行为
$sort_flags可选值如下
SORT_REGULAR
- 正常比较单元(不改变类型)
SORT_NUMERIC
- 单元被作为数字来比较
SORT_STRING
- 单元被作为字符串来比较
SORT_LOCALE_STRING
- 根据当前的区域(locale)设置来把单元当作字符串比较,可以用 setlocale() 来改变
SORT_NATURAL
- 对每个单元以“自然的顺序”对字符串进行排序
SORT_FLAG_CASE
- 能够与 SORT_STRING 或 SORT_NATURAL 合并(OR 位运算),不区分大小写排序字符串
返回值
成功时返回 TRUE
, 失败时返回 FALSE
。
范例
声明一个数组
$array = [1 => 'construct', 'c' => 'behavior', 3