2012-06-06 67 views
0

我正在嘗試更改購物車軟件上的輸出。我相信我已經找到了陣列來自哪裏,我只需要對它進行排序。 sort()不起作用。我用print_r來查看數組,它比我的小腦能處理的更多維數。如何用完整的貨幣名稱進行分類?如何對此多維數組進行排序

Array ([0] => Array ([id] => USD [text] => US Dollar) [1] => Array ([id] => EUR [text] => Euro) [2] => Array ([id] => GBP [text] => United Kingdom Pound) [3] => Array ([id] => CAD [text] => Canadian Dollar) [4] => Array ([id] => AUD [text] => Australian Dollar) [5] => Array ([id] => CHF [text] => Swiss Franc) [6] => Array ([id] => CZK [text] => Czech Koruna) [7] => Array ([id] => DKK [text] => Danish Krone) [8] => Array ([id] => HKD [text] => Hong Kong Dollar) [9] => Array ([id] => HUF [text] => Hungarian Forint) [10] => Array ([id] => JPY [text] => Japanese Yen) [11] => Array ([id] => NZD [text] => New Zealand Dollar) [12] => Array ([id] => NOK [text] => Norwegian Kroner) [13] => Array ([id] => PLN [text] => Polish Zloty) [14] => Array ([id] => SGD [text] => Singapore Dollar) [15] => Array ([id] => SEK [text] => Swedish Krona) [16] => Array ([id] => ILS [text] => Israeli New Shekel) [17] => Array ([id] => MXN [text] => Mexican Peso) [18] => Array ([id] => TWD [text] => Taiwan Dollar) [19] => Array ([id] => PHP [text] => Philippine Peso) [20] => Array ([id] => THB [text] => Thai Baht)) 
+0

的可讀性,可以輸入你在你的問題多行的陣列碼? –

回答

2

正如Interstellar_Coder說,使用usort,但這樣做的權利!

usort($array,create_function('$a,$b','return strnatcasecmp($a["text"],$b["text"]);')); 

或者,從PHP 5.3起:

usort($array,function($a,$b) {return strnatcasecmp($a['text'],$b['text']);}); 
+0

Yay for lambdas! – Okonomiyaki3000

+0

這絕對是使用匿名函數的完整答案+1。 –

+0

我不知道什麼是「Yay for lambdas」,也不知道「匿名函數」是什麼意思。另外,你說「正如Interstellar_Coder說的那樣」,但據我所知,在你回答之前他什麼也沒說。 我想我會得到一個通知,所以我認爲我的問題被忽略。這個網站在操作上令人困惑。 感謝您的答案,但!我想了一些其他的東西,但它遠沒有那麼優雅。也許更可讀,但不太優雅。 – bcsteeve

相關問題