Функция uasort()
позволяет вам указать функцию обратного вызова, которая будет отвечать за сравнение двух элементов, поэтому, если вы реализовать правильную функцию обратного вызова.
Здесь вам нужно реализовать функцию обратного вызова, которая получит два массива, и сравнить элемент age
:
function callback($a, $b) {
if ($a['age'] > $b['age']) {
return 1;
} else if ($a['age'] < $b['age']) {
return -1;
}
return 0;
}
Используя эту функцию в следующей части кода:
$arr = array(
'ted' => array( 'age' => 27 ),
'bob' => array( 'age' => 18 ),
'jay' => array( 'age' => 24 )
);
uasort($arr, 'callback');
var_dump($arr);
Вы получите этот результирующий массив:
array
'bob' =>
array
'age' => int 18
'jay' =>
array
'age' => int 24
'ted' =>
array
'age' => int 27