如何使用选定的键值对PHP多维关联数组进行排序

时间:2011-09-28 10:04:50

标签: php multidimensional-array

如何使用'zindex'键值

对以下php数组进行排序
$array = array('the-1'=> array('name'=>'lorem','pos'=>array('top'=>'90','left'=>'80'),'zindex'=>2),
        'the-2'=> array('name'=>'ipsum','pos'=>array('top'=>'190','left'=>'180'),'zindex'=>1),
        'the-3'=> array('name'=>'lorem ipsum','pos'=>array('top'=>'20','left'=>'30'),'zindex'=>3)
        )

是否有任何用于获取输出的php函数,如下所示

$array = array(
        'the-2'=> array('name'=>'ipsum','pos'=>array('top'=>'190','left'=>'180'),'zindex'=>1),
        'the-1'=> array('name'=>'lorem','pos'=>array('top'=>'90','left'=>'80'),'zindex'=>2),
        'the-3'=> array('name'=>'lorem ipsum','pos'=>array('top'=>'20','left'=>'30'),'zindex'=>3)
        )

2 个答案:

答案 0 :(得分:2)

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

这应该为你做的伎俩...它为我做了;)

答案 1 :(得分:0)

usort($array,function($el1,$el2){
    return $el1-$el2;
});

需要PHP5.3

如果你需要旧版本的支持,可以用普通版本替换匿名函数