2012-04-01 10 views
-3

私は時々配列リストに4,5,1,2、時には1,2,4,5を持っています。どのように[list] ASCの値を並べ替えることができるので、すべての[list]フィールドに1,2,4,5と1,2,3などがあるでしょうか?ありがとうございました。キーのPHP配列の並べ替えの値

Array 
(
    [0] => DibiRow Object 
     (
      [storage:ArrayObject:private] => Array 
       (
        [d] => 2012-04-03 08:30:00 
        [list] => 4,5,1,2 
       ) 

     ) 

    [1] => DibiRow Object 
     (
      [storage:ArrayObject:private] => Array 
       (
        [d] => 2012-04-03 09:00:00 
        [list] => 1,2,4,5 
       ) 

     ) 

    [2] => DibiRow Object 
     (
      [storage:ArrayObject:private] => Array 
       (
        [d] => 2012-04-03 09:00:00 
        [list] => 3,1,2     ) 

     ) 
    [3] => DibiRow Object 
     (
      [storage:ArrayObject:private] => Array 
       (
        [d] => 2012-04-03 09:00:00 
        [list] => 1,2,3     ) 

     ) 
+3

これまでに何を試みましたか? 'explode()'、 'sort()'、 'implode()'の単純な問題です。 –

+0

素晴らしい!それだった!私はこれを作った:for($ i = 0; $ i peter

答えて

0

まずはbubble sortingについて読んでみてください。その後、googleそれは、examplesを見つけて、自分でそれをやろうとします。それでも問題が解決しない場合は、askに戻って、何を試したのか、あなたの方法に間違っていると思われることを明記してください。

0

ありがとうございます。これは、私はあなたが単にGROUP_CONCAT(にはORDER BYを追加することができます書いた以前のクエリの結果にGROUP_CONCATに基づいている場合)

for ($i = 0; $i < count($all) ; $i++) { 
    $num = $all[$i][list]; 
    $resort = explode(",", $num); 
    sort($resort); 
    $resort = implode(",", $resort); 
    $all[$i][list] = $resort; 
} 
0

:私は、このソリューションを(それが大規模なデータと効果的であるかどうかを知りません)が発見しました -

GROUP_CONCAT(DISTINCT user_bookings.user_id ORDER BY user_bookings.user_id) 
関連する問題