2012-07-21 51 views
0

我有在類型(UNSORTED VERSION)的數組:

<?php 
$arr['foo']['man']  = 5 ; 
$arr['foo']['str']  = 'string5' ; 
$arr['foobar']['man'] = 2 ; 
$arr['foobar']['str'] = 'string2' ; 
$arr['barfoo']['man'] = 4 ; 
$arr['barfoo']['str'] = 'string4' ; 
$arr['foofoo']['man'] = 1 ; 
$arr['foofoo']['str'] = 'string1' ; 
$arr['bar']['man']  = 3 ; 
$arr['bar']['str']  = 'string3' ; 
?> 

我想它在decending順序進行排序,同時保持該陣列中的所有其它數據,即

<?php 
$arr['foo']['man']  = 5 ; 
$arr['foo']['str']  = 'string5' ; 
$arr['barfoo']['man'] = 4 ; 
$arr['barfoo']['str'] = 'string4' ; 
$arr['bar']['man']  = 3 ; 
$arr['bar']['str']  = 'string3' ; 
$arr['foobar']['man'] = 2 ; 
$arr['foobar']['str'] = 'string2' ; 
$arr['foofoo']['man'] = 1 ; 
$arr['foofoo']['str'] = 'string1' ; 
?> 

我在PHP已經看過許多排序功能,但還沒有找到任何解決方案

任何人可以幫助我嗎?提前致謝。

+0

你能給的陣列來比較的初始版本未分類的例子嗎? – Rhys 2012-07-21 13:43:01

+0

嗨ryven,對不起,這是一些stackoverflow編輯器的bug,忘記了代碼和情節之間的一個換行符,它現在在那裏。 :) – 2012-07-21 13:56:04

回答

2

使用此功能:

uasort($yourArray, function($a, $b) { 
    return strcmp($a['man'], $b['man']); 
}); 

還是看array_multisort