2015-03-05 2 views
0

Я нашел много информации об упорядочении ассоциативных массивов, но мало что касается сортировки неассоциативных. Мой массив структурирован/заселен таким образом:Сортировка неассоциативного многомерного массива

$my_array = array(); 
$my_array[0][0] = 'whatever3'; 
$my_array[0][1] = 3 
$my_array[1][0] = 'whatever2'; 
$my_array[1][1] = 2 
$my_array[2][0] = 'whatever1'; 
$my_array[2][1] = 1 

Я хочу, чтобы отсортировать его по второму значению, чтобы получить:

$my_array[0][0] = 'whatever1'; 
$my_array[0][1] = 1; 
$my_array[1][0] = 'whatever2'; 
$my_array[1][1] = 2; 
$my_array[2][0] = 'whatever3'; 
$my_array[2][1] = 3; 

Как это может быть достигнут с учетом моего массив не является ассоциативным?

ответ

2

насчет:

usort($combined, function ($a, $b) { return $a[1] - $b[1]; }); 

С usort вы предоставите пользовательскую функцию сравнения, которая должна возвращать:

  • 0, если элементы должны считаться равными.
  • отрицательное число, если первый элемент должен считаться меньшим, чем второй.
  • положительное число, если первый элемент должен считаться большим, чем второй.

В этом случае мы выбираем сравнение второго элемента каждого элемента массива $combined.

+0

Удивительный! То, что я имел в виду. – drake035

Смежные вопросы