0
確定的值訂購ABC順序的排列,我有一個數組,像這樣:PHP如何從它的界限的1
$my_array = array(
'hi' => array('description' => 'how are you?', 'title' => 'Hello', 'link' => 'http://mylink.com'),
'bye' => array('description' => array('Goodbye!', 'see ya'), 'title' => 'See Ya Later', 'link' => 'http://mybyelink.com'),
'not_now' => array('description' => array('I am away now!', 'gone'), 'title' => 'Away', 'link' => 'http://myawaylink.com'),
'back' => array('description' => array('I am back now!', 'back', 'present'), 'title' => 'Here', 'link' => 'http://mybacklink.com'),
);
所以我想數組進行排序,在PHP代碼中,以某種方式,以便它通過每個數組綁定的TITLE命令它:$my_array['hi']['title']
,$my_array['bye']['title']
,$my_array['not_now']['title']
和$my_array['back']['title']
,但它必須保持數組完整,以便hi,bye,not_now和back內的所有值完全相同和所有的數組(如果有的話,也是一樣的)。
所以這個陣列將需要取決於冠軍 ABC順序來排序,所以應該按以下順序返回:
$my_array = array(
'not_now' => array('description' => array('I am away now!', 'gone'), 'title' => 'Away', 'link' => 'http://myawaylink.com'),
'hi' => array('description' => 'how are you?', 'title' => 'Hello', 'link' => 'http://mylink.com'),
'back' => array('description' => array('I am back now!', 'back', 'present'), 'title' => 'Here', 'link' => 'http://mybacklink.com'),
'bye' => array('description' => array('Goodbye!', 'see ya'), 'title' => 'See Ya Later', 'link' => 'http://mybyelink.com'),
);
標題是在ABC順序這裏:走,你好,到了這裏,請參閱Ya後期。
我怎樣才能做到這一點,仍然保持數組完整的所有子數組呢?
謝謝你們:)
哇,萬分感謝,正是我需要的!我不明白爲什麼$ a ['title']和$ b ['title']完全相同,但又不熟悉PHP的uasort函數。 $ a和$ b究竟代表什麼?數組的不同邊界? – SoLoGHoST
$ a和$ b表示您正在比較的數組中的兩項。所以PHP迭代你的給定數組,在這種情況下$ my_array並且它將每個數組元素與其他數組進行比較。所以$ a是$ my_array的一個元素,$ b是它與該數組進行比較的另一個元素。您的$ my_array是多維的,因此$ a也是一個數組,其中一個鍵是'title',與$ b相同。我們可以比較那個子陣列中的任何東西。當然,這假定$ my_array的每個元素都是以相同的方式構成的,也就是說,它是一個帶有'title'鍵的數組。 – davidethell
好的,謝謝你向我解釋這個:) – SoLoGHoST