对多维数组进行排序

时间:2009-03-15 19:40:09

标签: php arrays sorting multidimensional-array

我需要对表示文件系统结构的多维数组进行排序:

Array
(
    [dir1] => Array
        (
            [dir2] => Array
                (
                    [dir3] => Array
                        (
                            [dir4] => Array
                                (
                                    [0] => file1.php
                                    [1] => abc.php
                                )

                        )

                    [0] => file2.php
                    [1] => abc.php
                )

        )

    [abc] => Array
        (
            [abc] => Array
                (
                    [abc] => Array
                        (
                            [0] => file5.php
                        )

                )

        )

)

我不知道算法是什么。

1 个答案:

答案 0 :(得分:3)

http://php.net/sort#51088

用msort($ a)替换mulsort函数开头的sort($ a)

编辑:抱歉,只需将mulsort代码更改为:

function mulsort(&$a)
{
 ksort($a);
 foreach($a as &$value)
    if (is_array($value))
        mulsort($value);
}