2011-09-04 80 views
3

我有一個像這樣的輸入數組,其中「axis」,「maximum_deviation」和「current」是表格列。我需要插入4行:輸入數組轉換

Array 
(
    [axis_deviation] => Array 
     (
      [0] => Array 
       (
        [axis] => Array 
         (
          [0] => axis 1 
          [1] => axis 2 
          [2] => axis 3 
          [3] => axis 4 
         ) 

       ) 

      [1] => Array 
       (
        [maximum_deviation] => Array 
         (
          [0] => 0.001 
          [1] => 0.003 
          [2] => 12 
          [3] => 0.003 
         ) 

       ) 

      [2] => Array 
       (
        [current] => Array 
         (
          [0] => 0.002 
          [1] => 0.002 
          [2] => 13 
          [3] => 0.003 
         ) 
       ) 
     ) 
) 

我需要把它轉化爲這種格式:

Array 
(
    [0] => Array 
     (
      [axis] => axis 1 
      [maximum_deviation] => 0.001 
      [current] => 0.002 
     ) 

    [1] => Array 
     (
      [axis] => axis 2 
      [maximum_deviation] => 0.001 
      [current] => 0.002 
     ) 

    [2] => Array 
     (
      [axis] => axis 3 
      [maximum_deviation] => 0.001 
      [current] => 0.002 
     ) 

    [2] => Array 
     (
      [axis] => axis 4 
      [maximum_deviation] => 0.001 
      [current] => 0.002 
     ) 
) 

所有行的長度是可變的。

回答

5
$result = array(); 
foreach ($array['axis_deviation'] as $foo) { 
    foreach ($foo as $key => $bar) { 
    foreach ($bar as $index => $value) { 
     if (!array_key_exists($index, $result)) $result[$index] = array(); 
     if (!array_key_exists($key, $result[$index])) $result[$index][$key] = array(); 
     $result[$index][$key] = $value; 
    } 
    } 
} 
+0

很好用!謝謝! – Meddie