2013-05-01 12 views
8

現在、私の配列は文字列の長さでソートしています。しかし、文字列の長さが等しい場合、どのように値で並べ替えるのですか?配列を文字列長で並べ替え、次にPHPで値を並べ替えるにはどうすればよいですか?

例として

、私の現在のコード:

$array = array("A","BC","AA","C","BB", "B"); 

function lensort($a,$b){ 
    return strlen($a)-strlen($b); 
} 

usort($array,'lensort'); 

print_r($array); 

出力:

Array 
(
    [0] => C 
    [1] => A 
    [2] => B 
    [3] => BB 
    [4] => AA 
    [5] => BC 
) 

しかし、私はそれが代わりに以下でソートしたいと思います:

Array 
(
    [0] => A 
    [1] => B 
    [2] => C 
    [3] => AA 
    [4] => BB 
    [5] => BC 
) 

答えて

11

組み込みますどちらもコンパレータにチェックインしてください:

あなたは this demoから

を見ることができるこの版画:

Array 
(
    [0] => A 
    [1] => B 
    [2] => C 
    [3] => AA 
    [4] => BB 
    [5] => BC 
) 
関連する問題