@Apostol63

Как объединить 3 массива в 1 многомерный?

Добрый день
Задача такая. Есть 3 массива
$arr1 = [ 0=>Петя, 1=>Коля, 2=>Вася ]
$arr2 = [ 0=>100руб, 1=>200руб, 2=>300руб ]
$arr3 = [ 0=>Москва, 1=>Тверь, 2=>Уфа ]

Как мне получить один массив вида
$result = [
0=> [0=>Петя, 1=>100руб, 2=>Москва]
1=> [0=>Коля, 1=>200руб, 2=>Тверь]
2=> [0=>Вася, 1=>300руб, 2=>Уфа]
]

Я смотрел функции для работы с массивами и так и не разобрался какая мне подойдет
  • Вопрос задан
  • 551 просмотр
Решения вопроса 2
slo_nik
@slo_nik Куратор тега PHP
Доброе утро.
$arr1 = [ 0=>'Петя', 1=>'Коля', 2=>'Вася' ];
$arr2 = [ 0=>'100руб', 1=>'200руб', 2=>'300руб' ];
$arr3 = [ 0=>'Москва', 1=>'Тверь', 2=>'Уфа' ];
function func($a, $b, $c){
    return [$a, $b, $c];
}
$result = array_map('func', $arr1, $arr2, $arr3);
print_r($result);
Ответ написан
DevMan
@DevMan
$arr1 = [ 'Петя', 'Коля', 'Вася' ];
$arr2 = [ '100руб', '200руб', '300руб' ];
$arr3 = [ 'Москва', 'Тверь', 'Уфа' ];
for($i = 0, $size = count($arr1); $i < $size; ++$i) {
	$result[] = [$arr1[$i], $arr2[$i], $arr3[$i]];
}
print_r($result);
https://ideone.com/eFv0LH
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
kimono
@kimono
Web developer
$result = [
  $arr1,
  $arr2,
  $arr3,
];
Ответ написан
@l1l1l1
Ответ написан
Комментировать
@Krava
$res = [];
     
    $arr1 = [ 0=>'Петя', 1=>'Коля', 2=>'Вася' ];
    $arr2 = [ 0=>'100руб', 1=>'200руб', 2=>'300руб' ];
    $arr3 = [ 0=>'Москва', 1=>'Тверь', 2=>'Уфа' ];
     
    $res[] = $arr1;
    $res[] = $arr2;
    $res[] = $arr3;
    print_r($res);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы