我有以下數組設置,每個美國主要城市都有其人口規模。
$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 2012-02-14 13:03:53
也許只是操縱你的嵌套數組到一個簡單的鍵值數組和'asort()' – 2012-02-14 13:07:29
usort() - http://www.php.net/manual/en/function.usort.php – 2012-02-14 13:09:55