Array ( [1] => Array ( [date] => 2011-08-18 [num] => 5 ) [2] => Array ( [date] => 2011-08-20 [num] => 3 ) [3] => Array ( [date] => 2011-08-17 [num] => 10 ) ) 
如何按date升序重新排?

解决方案 »

  1.   

    $ar = Array ( 1 => Array ( 'date' => '2011-08-18', 'num' => 5 ),
                 2 => Array ( 'date' => '2011-08-20', 'num' => 3 ),
                 3 => Array ( 'date' => '2011-08-17', 'num' => 10 )
              );function mysort($a, $b) {
       $a = strtotime($a['date']);
       $b = strtotime($b['date']);
       if ($a == $b) return 0;
       return ($a < $b) ? -1 : 1;
    }usort($ar, 'mysort');print_r($ar);
    /*
    Array
    (
        [0] => Array
            (
                [date] => 2011-08-17
                [num] => 10
            )
        [1] => Array
            (
                [date] => 2011-08-18
                [num] => 5
            )
        [2] => Array
            (
                [date] => 2011-08-20
                [num] => 3
            )
    )
    */
      

  2.   


    $arr=array ( 
    '1' => array ( 'date' => '2011-08-18', 'num' => 5 ) ,
    '2' => array ( 'date' => '2011-08-20', 'num' => 3 ) ,
    '3' => array ( 'date' => '2011-08-17', 'num' => 10 )
     )  ; foreach($arr as $v){
          $tmp[$v[date]]=$v;
     }
     ksort($tmp);
     print_r(array_values($tmp));