Транспонировать многомерный массив с 3 уровнямиPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Транспонировать многомерный массив с 3 уровнями

Сообщение Anonymous »

Итак, сейчас у меня есть массив, который выглядит следующим образом.
Array
(
[name] => Array
(
[1] => Array
(
[0] => 500aqua.jpg
)

[2] => Array
(
[0] => 500beige.jpg
[1] => 500beige-zoom.jpg
)

[3] => Array
(
[0] => P1040485.JPG
[1] => P1040486.JPG
[2] => P1040487.JPG
)
)

[type] => Array
(
[1] => Array
(
[0] => image/jpeg
)

[2] => Array
(
[0] => image/jpeg
[1] => image/jpeg
)

[3] => Array
(
[0] => image/jpeg
[1] => image/jpeg
[2] => image/jpeg
)
)

[tmp_name] => Array
(
[1] => Array
(
[0] => C:\xampp\tmp\php5F9.tmp
)

[2] => Array
(
[0] => C:\xampp\tmp\php5FA.tmp
[1] => C:\xampp\tmp\php5FB.tmp
)

[3] => Array
(
[0] => C:\xampp\tmp\php60C.tmp
[1] => C:\xampp\tmp\php63B.tmp
[2] => C:\xampp\tmp\php66B.tmp
)
)

[error] => Array
(
[1] => Array
(
[0] => 0
)

[2] => Array
(
[0] => 0
[1] => 0
)

[3] => Array
(
[0] => 0
[1] => 0
[2] => 0
)
)

[size] => Array
(
[1] => Array
(
[0] => 133659
)

[2] => Array
(
[0] => 148940
[1] => 211420
)

[3] => Array
(
[0] => 3939511
[1] => 4742470
[2] => 4345899
)
)

)

И я хочу, чтобы это выглядело примерно так
Array
(
[0] => Array
(
[0] => Array
(
[name] => 500aqua.jpg
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php5F9.tmp
[error] => 0
[size] => 133659

)
)
[1] => Array
(
[0] => Array
(
[name] => 500beige.jpg
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php5FA.tmp
[error] => 0
[size] => 148940
)
[1] => Array
(
[name] => 500beige-zoom.jpg
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php5FB.tmp
[error] => 0
[size] => 211420
)
)
[2] => Array
(
[0] => Array
(
[name] => P1040485.JPG
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php60C.tmp
[error] => 0
[size] => 148940
)
[1] => Array
(
[name] => P1040486.JPG
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php63B.tmp
[error] => 0
[size] => 148940
)
[2] => Array
(
[name] => P1040487.JPG
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php66B.tmp
[error] => 0
[size] => 148940
)
)
)

Я попробовал следующий код, но, похоже, он возвращает только три последних массива.
foreach ($data as $d) {
foreach ($d as $key => $e) {
foreach ($e as $key2 => $f) {
$result[$key2][$key] = $f;
}
}
}

Нравится
Array
(
[0] => Array
(
[name] => P1040485.JPG
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php60C.tmp
[error] => 0
[size] => 3939511
)

[1] => Array
(
[name] => P1040486.JPG
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php63B.tmp
[error] => 0
[size] => 4742470
)

[2] => Array
(
[name] => P1040487.JPG
[type] => image/jpeg
[tmp_name] => C:\xampp\tmp\php66B.tmp
[error] => 0
[size] => 4345899
)

)


Подробнее здесь: https://stackoverflow.com/questions/185 ... h-3-levels
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»