2012-03-12 21 views
6

Bu diziyi "altyazı" artan alt dizinine göre sıralamalıyım. Ben usort, ksort, subval_sort gibi birkaç yöntem denedim ama Bunların hiçbiri işe yaramazsa Herhangi bir yardım takdirDizeyle çok boyutlu bir diziyi mi sıralama?

(Ben asıl sorun bu her zaman, dizeleri olmasıdır tahmin)

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) 
    } 
} 

cevap

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

mükemmel, teşekkür ederim! – peipst9lker

0

size array_multisort benzeri SORT_STRING seçeneğini kullanabilirsiniz:

array_multisort($ar[0], SORT_ASC, SORT_STRING, 
      $ar[1], , SORT_ASC, SORT_STRING); 
İlgili konular