2011-12-27 78 views
1

如何使用下面的字母顺序排列数组作为关键标准label?我尝试使用array_multisortusortrsortsort,但它没有奏效。如何重新排序多维数组?

array(3) { 
    [0]=> 
    array(2) { 
    ["id"]=> 
    string(1) "9" 
    ["label"]=> 
    string(26) "ffffff" 
    } 
    [1]=> 
    array(2) { 
    ["id"]=> 
    string(2) "10" 
    ["label"]=> 
    string(25) "aaaaaaaaa" 
    } 
    [2]=> 
    array(2) { 
    ["id"]=> 
    string(1) "6" 
    ["label"]=> 
    string(5) "dddddd" 
    } 
} 

回答

5

您可以同时使用usort()strcmp()

usort($arr, function($e1, $e2) 
{ 
    $cmp = strcmp($e1['label'], $e2['label']); 
    if($cmp == 0) { return 0; } 
    return $cmp > 0 ? 1 : -1; 
}); 
+0

感谢蒂姆数组排序,它的工作。 – Guttemberg 2011-12-27 15:53:29