2016-11-18 12 views
0

配列の長さに基づいて配列の配列をソートするには、PHPではどのような方法が最適ですか?配列の長さに基づいて配列を並べ替える

array (size=3) 
    0 => 
     array (size=3) 
     0 => string '1' (length=1) 
     1 => string '2' (length=1) 
     2 => string '3' (length=1) 
    1 => 
     array (size=6) 
     0 => string '1' (length=1) 
     1 => string '2' (length=1) 
     2 => string '3' (length=1) 
     3 => string '4' (length=1) 
     4 => string '5' (length=1) 
     5 => string '6' (length=1) 
    2 => 
     array (size=4) 
     0 => string '1' (length=1) 
     1 => string '2' (length=1) 
     2 => string '3' (length=1) 
     3 => string '4' (length=1) 

私はこのようになって配列 の大きさのもとにそれをソートする必要があります。

array (size=3) 
    0 => 
     array (size=6) 
     0 => string '1' (length=1) 
     1 => string '2' (length=1) 
     2 => string '3' (length=1) 
     3 => string '4' (length=1) 
     4 => string '5' (length=1) 
     5 => string '6' (length=1) 
    1 =>  
     array (size=4) 
     0 => string '1' (length=1) 
     1 => string '2' (length=1) 
     2 => string '3' (length=1) 
     3 => string '4' (length=1) 
    2 => 
     array (size=3) 
     0 => string '1' (length=1) 
     1 => string '2' (length=1) 
     2 => string '3' (length=1) 

誰かがソートに関数を作成するために私を助けることができます。ありがとうございます

+2

最良の方法は、 'usort' –

+0

http://stackoverflow.com/questions/10852964/sorting-a-multi-dimensional-array-according-to-length-in-phpを使用することです –

答えて

3

usortを使用する必要があります。

function cmp($a, $b){ 
    return (count($b) - count($a)); 
} 
usort($array, 'cmp'); //$array is your array 
$arrayAfterSort = $array; 
関連する問題