2011-09-04 4 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

관련 문제