我是新來的PHP,並試圖用特定順序數組排序字符串的二維數組。一直在尋找使用'usort'和'比較',但是當使用2d數組和字符串時似乎無法將我的頭圍繞在它們周圍。按特定順序排列的PHP排序2d字符串數組
需要將數組輸入到方法並返回具有相同格式的排序數組。因此,對於數組中的每個條目,它將根據順序數組的順序對第二級「文件」值進行排序。任何建議如何做到這一點?
//actual array to be sorted by 'file'
$Array (
[0] => Array ([source] => img/table/icon/toxic.svg [file] => toxic)
[1] => Array ([source] => img/table/icon/health.svg [file] => health)
[2] => Array ([source] => img/table/icon/irritant.svg [file] => irritant ));
//order array with desired sort order
$order = array("irritant","corrosive","environment" ,"health","toxic","oxidizing","flammable","explosive","gas");
//Desired Output Result
$Array (
[0] => Array ([source] => img/table/icon/irritant.svg [file] => irritant)
[1] => Array ([source] => img/table/icon/health.svg [file] => health)
[2] => Array ([source] => img/table/icon/toxic.svg [file] => toxic));
看到這麼刺激的第一和毒性是最後:)
謝謝你的工作....看起來很簡單,但wudve帶了我一陣子,想弄清楚使用arrayflip和ksort。 – Orbitall
你甚至不需要'array_flip' ......看看我最後的編輯。沒有這個可以做到。也很高興我能幫上忙。 xathien提出的usort方法也可以工作,但對於PHP的新手來說,它沒有解釋任何東西。 – zgr024