PHP 数组排序有哪些方法

admin 轻心小站 关注 LV.19 运营
发表于php技术学习版块 教程

PHP提供了多种数组排序函数,可以对数值数组和关联数组进行排序。以下是一些常用的数组排序方法:1. sort()对数值数组进行升序排序。$numbers = [4, 2, 5, 1, 3]; sort

PHP提供了多种数组排序函数,可以对数值数组和关联数组进行排序。以下是一些常用的数组排序方法:

1. sort()

对数值数组进行升序排序。

$numbers = [4, 2, 5, 1, 3];
sort($numbers);
print_r($numbers);

2. asort()

对关联数组进行升序排序,保持键值关系。

$person = [
    "name" => "John",
    "class" => "A",
    "age" => 25
];
asort($person);
print_r($person);

3. ksort()

对关联数组按照键名进行升序排序。

$person = [
    "name" => "John",
    "class" => "A",
    "age" => 25
];
ksort($person);
print_r($person);

4. rsort()

对数值数组进行降序排序。

$numbers = [4, 2, 5, 1, 3];
rsort($numbers);
print_r($numbers);

5. arsort()

对关联数组进行降序排序,保持键值关系。

$person = [
    "name" => "John",
    "class" => "A",
    "age" => 25
];
arsort($person);
print_r($person);

6. krsort()

对关联数组按照键名进行降序排序。

$person = [
    "name" => "John",
    "class" => "A",
    "age" => 25
];
krsort($person);
print_r($person);

7. usort()

使用自定义比较函数对数组进行排序。

$numbers = [4, 2, 5, 1, 3];
usort($numbers, function($a, $b) {
    return $a - $b;
});
print_r($numbers);

8. uasort()

使用自定义比较函数对关联数组进行排序,保持键值关系。

$person = [
    "name" => "John",
    "class" => "A",
    "age" => 25
];
uasort($person, function($a, $b) {
    return $a <=> $b;
});
print_r($person);

9. uksort()

使用自定义比较函数对关联数组的键名进行排序。

$person = [
    "name" => "John",
    "class" => "A",
    "age" => 25
];
uksort($person, function($a, $b) {
    return $a <=> $b;
});
print_r($person);

10. array_multisort()

对多个数组或多维数组进行排序。

$numbers = [4, 2, 5, 1, 3];
$letters = ['e', 'b', 'a', 'd', 'c'];
array_multisort($numbers, $letters);
print_r($numbers);
print_r($letters);

11. array_push() 和 array_pop()

用于栈操作,array_push() 将元素添加到数组末尾,array_pop() 从数组末尾移除元素。

$stack = [1, 2, 3];
array_push($stack, 4);
$lastElement = array_pop($stack);
print_r($stack);

这些排序函数可以处理不同的数据类型和排序需求,选择哪个函数取决于你的具体场景。例如,如果你需要保持键值关系,可以使用 asort() 或 arsort();如果你需要按照自定义规则排序,可以使用 usort() 或 uasort()。

文章说明:

本文原创发布于探乎站长论坛,未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,探乎站长论坛平台仅提供信息存储空间服务。

评论列表 评论
发布评论

评论: PHP 数组排序有哪些方法

粉丝

0

关注

0

收藏

0

已有0次打赏