📅  最后修改于: 2023-12-03 14:45:18.218000             🧑  作者: Mango
ksort()
是PHP内置的数组排序函数之一,用于按照键名对数组进行升序排序。相对应的,还有函数krsort()
可以做到按照键名对数组进行降序排序。
ksort(array &$array [, int $sort_flags = SORT_REGULAR]): bool
$array
:要排序的数组,引用传递。$sort_flags
:可选参数,指定排序的类型和排序方式。有以下几种排序类型:| 常量 | 描述 |
| --- | --- |
| SORT_REGULAR
| 默认,将元素按照通常方法比较。|
| SORT_NUMERIC
| 将元素按照数值大小比较。|
| SORT_STRING
| 将元素按照字符串方式比较。|
| SORT_LOCALE_STRING
| 根据当前区域设置,将元素以字符串方式比较。|
| SORT_NATURAL
| 将元素按照自然顺序对字符串进行比较(不区分大小写)。|
| SORT_FLAG_CASE
| 只和SORT_STRING
或SORT_NATURAL
一起使用,不区分大小写。|
返回一个布尔值,表示排序是否成功。
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
ksort($fruits);
print_r($fruits);
输出:
Array
(
[a] => orange
[b] => banana
[c] => apple
[d] => lemon
)
$data = array(
array('name' => 'Tom', 'age' => 18),
array('name' => 'Jerry', 'age' => 16),
array('name' => 'Mike', 'age' => 20)
);
foreach ($data as $key => $row) {
$names[$key] = $row['name'];
$ages[$key] = $row['age'];
}
ksort($names);
ksort($ages);
print_r($names);
print_r($ages);
输出:
Array
(
[0] => Jerry
[1] => Mike
[2] => Tom
)
Array
(
[0] => 16
[1] => 18
[2] => 20
)
在多维数组的情况下,使用ksort()
函数可以将数组的键名进行排序,从而保持数组的结构不变。
ksort()
函数用于按照键名来对数组进行升序排序。ksort()
函数直接对传入的数组进行排序,并且返回一个布尔值表示是否成功。SORT_NUMERIC
、SORT_STRING
)一起使用,以满足不同的排序需求。