Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

input array conversion

Tags:

arrays

forms

php

I have an input array like this one, where "axis", "maximum_deviation" and "current" are table columns. I need to insert 4 rows:

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
                        )
                )
        )
)

I need to turn it to this format:

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
        )
)

All rows are of variable length.

like image 407
Meddie Avatar asked Jun 21 '26 12:06

Meddie


1 Answers

$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;
    }
  }
}
like image 124
KingCrunch Avatar answered Jun 24 '26 03:06

KingCrunch



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!