如何对嵌套的PHP数组进行排序

时间:2012-11-22 10:28:25

标签: php sorting

有谁能告诉我如何按键对数组进行排序? 我想按价格对这个数组进行排序。

这是我的输入数组格式

Array
(
    [0] => Array
        (
            [house_data] => Array
                (
                    [id] => 532
                    [max_person] => 8
                    [max_bedrooms] => 4
                )

            [image] => uploads/123.jpg
            [price] => 1950
        )

    [1] => Array
        (
            [house_data] => Array
                (
                    [id] => 531
                    [max_person] => 8
                    [max_bedrooms] => 5
                )

            [image] => uploads/1234.jpg
            [price] => 1495
        )
}

3 个答案:

答案 0 :(得分:1)

尝试usort(http://php.net/manual/en/function.usort.php)

你应该有类似的东西:

function cmp($a, $b)
{
    if ($a['price'] == $b['price']) {
        return 0;
    }
    return ($a['price'] < $b['price']) ? -1 : 1;
}

usort($table, "cmp");

答案 1 :(得分:0)

使用array_multisort()函数进行多维数组排序。

答案 2 :(得分:0)

为了使它成为一维使用serialize($ array)函数,它是这样的:

$ a = array(); //你的多维数组
$ b = array(); //输出数组

foreach($ a as $ key =&gt; $ value){
$ b [] =序列化($ value);
}


echo $ b;