Мне нужно отсортировать массивы внутри массива массива на основе одного из значений массива массива.
Например:
$data = array( array( 1, "Article One", 132, 12402773, 3 ), array( 2, "Article Two", 251, 12519283, 5 ), array( 3, "Article Three", 107, 12411321, 3 ), array( 4, "Article Four", 501, 12228135, 4 ) );
По умолчанию, если я печатаю второй элемент каждого массива:
Мне нужно отсортировать его по убыванию в третьем элементе дочернего массива.
Так было бы так:
Потому что 501> 251> 132> 107.
Любое предложение?
Для этого я обычно использую usort()
:
function compare($a, $b) { return ($a[2] > $b[2]); } usort($data, 'compare');
array_multisort 🙂