2012-03-12 32 views
6

Muszę posortować tę tablicę według słowa kluczowego "opis" subskrybenta. Próbowałem kilka metod, takich jak usort, ksort, subval_sort ale żadna z tych prac (Myślę, że głównym problemem jest to, że są to ciągi, zawsze)Sortowanie wielowymiarowej tablicy według łańcucha?

Każda pomoc jest mile widziana

array(77) { 
    [0]=> 
    array(3) { 
    ["name"]=> 
    string(17) "abcd" 
    ["description"]=> 
    string(15) "Delete XY" 
    ["level"]=> 
    int(1) 
    } 
    [1]=> 
    array(3) { 
    ["name"]=> 
    string(13) "fgfgdgfd" 
    ["description"]=> 
    string(18) "Uploader XY" 
    ["level"]=> 
    int(1) 
    } 
    [2]=> 
    array(3) { 
    ["name"]=> 
    string(15) "sdfdsfsdfs" 
    ["description"]=> 
    string(20) "Download abc" 
    ["level"]=> 
    int(0) 
    } 
} 

Odpowiedz

10
usort($array, function ($a, $b) { 
    return strcasecmp($a['description'], $b['description']); //compare two strings ignoring case 
}); 
+0

doskonały, dziękuję! – peipst9lker

0

ci można użyć SORT_STRING opcję array_multisort jak:

array_multisort($ar[0], SORT_ASC, SORT_STRING, 
      $ar[1], , SORT_ASC, SORT_STRING); 
Powiązane problemy