Для примера.Сортировка многомерного массива в php - по значению
У меня есть следующая настройка массива, в которой есть каждый крупный американский город с его численностью населения.
$usapopstats = array(
array('New York',8008278),
array('Los Angeles',3694820),
array('Chicago',2896016),
array('Houston',1953631),
array('Philadelphia',1517550),
array('Phonenix',45),
array('San Diego',1223400),
array('Dallas',1188580),
array('San Antonio',1144646),
array('Detroit',951270)
);
Я хочу отсортировать эту информацию по их размеру популяции. Но когда я попытался использовать функцию arsort, он сортирует массив по ключевым данным, а не данные значения, то есть отсортированные по городу.
Итак, мой вопрос в том, как вы программируете сортировку по размеру популяции для этого типа многомерного массива? Есть идеи?
Если массив были переписаны, как этот
$usapopstats = array(
'New York'=>8008278,
'Los Angeles'=>3694820,
'Chicago'=>2896016,
'Houston'=>1953631,
'Philadelphia'=>1517550,
'Phoenix'=>45,
'San Diego'=>1223400,
'Dallas'=>1188580,
'San Antonio'=>1144646,
'Detroit'=>951270
);
asort($usapopstats);
Это сортирует массив по численности населения.
Возможный дубликат [Сортировка многомерного массива в PHP] (http://stackoverflow.com/questions/2059255/sorting-multidimensional-array-in-php) – jprofitt
возможно просто манипулировать вашим вложенным массивом простым массивом значений ключа и 'asort()', что –
usort() - http://www.php.net/manual/en/function.usort.php –