Как отсортировать многомерный ассоциативный массив PHP с выбранным значением ключа - PullRequest
0 голосов
/ 28 сентября 2011

Как отсортировать следующий массив php с его значением ключа 'zindex'

$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 ]

2 голосов
/ 11 ноября 2012
usort($array, function($a, $b) {
    if ($a['name'] == $b['name']) {
        return 0;
    }
    return ($a['name'] < $b['name']) ? -1 : 1;
}); 

Это должно помочь вам ... Это помогло мне;)

0 голосов
/ 28 сентября 2011
usort($array,function($el1,$el2){
    return $el1-$el2;
});

Требуется PHP5.3

, если вам нужна поддержка более старых версий, замените анонимную функцию обычной

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...