温馨提示×

php arsort 能处理多维数组吗

PHP
小樊
82
2024-11-25 23:23:59
栏目: 编程语言

arsort() 函数在 PHP 中用于对数组进行降序排序,它接受一个关联数组作为参数。如果你需要对多维数组进行降序排序,你需要先提取每个子数组,然后使用 arsort() 对这些子数组进行排序,最后再将排序后的子数组重新组合成多维数组。

以下是一个示例,展示了如何使用 arsort() 对多维数组进行降序排序:

<?php
// 多维数组
$array = [
    ['name' => 'Alice', 'age' => 30],
    ['name' => 'Bob', 'age' => 25],
    ['name' => 'Carol', 'age' => 35]
];

// 提取子数组并存储在 $subArrays 中
$subArrays = [];
foreach ($array as $subArray) {
    $subArrays[] = $subArray;
}

// 使用 arsort() 对子数组进行降序排序
arsort($subArrays);

// 将排序后的子数组重新组合成多维数组
$sortedArray = [];
foreach ($subArrays as $subArray) {
    $sortedArray[] = $subArray;
}

// 输出排序后的多维数组
print_r($sortedArray);
?>

输出结果:

Array
(
    [0] => Array
        (
            [name] => Carol
            [age] => 35
        )

    [1] => Array
        (
            [name] => Alice
            [age] => 30
        )

    [2] => Array
        (
            [name] => Bob
            [age] => 25
        )
)

在这个示例中,我们首先提取了多维数组的子数组,然后使用 arsort() 对这些子数组进行了降序排序。最后,我们将排序后的子数组重新组合成多维数组。

0