Объединять / объединять массивы бок о бок

Как проще всего объединить два массива, чтобы они стали рядом?

Здесь $ Arr1

Array
(
[0] => Windows
)

и вот $ Arr2

Array
(
[0] => 5.0
)

Как бы я их объединил, чтобы $Arr[0] = "Windows5.0"?

array_merge($Arr1, $Arr2) Добавляет $Arr2 быть ниже $Arr1 что не то, что я хочу

1

Решение

array_combine может работать на вас, если каждый массив имеет одинаковую длину и ключи действительны. Это позволит лучше структурировать ваши данные, и тогда вы сможете использовать цикл foreach.

<?php
$a = array('Windows', 'Mac', 'Linux');
$b = array('5.0', '6.0', '3.14');
$c = array_combine($a, $b);

print_r($c);
?>

Приведенный выше пример выведет:

Array
(
[Windows]  => 5.0
[Mac]    => 6.0
[Linux] => 3.14
)

Так что если вам нужно получить значение для Windows, это будет:

<?php
foreach($c as $key => value) {
echo $key." ".$value."\n";
}

?>

Который будет отображать:

Windows 5.0
Mac 6.0
Linux 3.14
3

Другие решения

попробуй это

$Arr1 = Array ( "Windows");
$Arr2 = Array ( " 5.0");

$arr = array( $Arr1[0] . $Arr2[0] );
var_dump($arr);

Ouput

array (size=1)
0 => string 'Windows 5.0' (length=11)
1

Для вашего конкретного примера, после того, как вы выполните array_merge, выполните implode для результирующего массива, это даст вам желаемый результат.

$Arr = [implode(array_merge($Arr1, $Arr2))]; // works for PHP 5.4+
$Arr = array(implode(array_merge($Arr1, $Arr2))) // for older versions

У меня есть подозрение, что ваши требования немного сложнее, чем это.

Для получения дополнительной информации о implode, увидеть: http://php.net/manual/en/function.implode.php

Если вы хотите объединить значения из нескольких записей, попробуйте использовать array_map:

$Arr1 = array('windows', 'floor', 'door');
$Arr2 = array('5.0', '6.0', '7.0');
$Arr = array_map(function($a, $b) { return $a . $b; }, $Arr1, $Arr2);

Это выведет:

    Array
(
[0] => windows5.0
[1] => floor6.0
[2] => door7.0
)

Для получения дополнительной информации о array_map, увидеть: http://php.net/manual/en/function.array-map.php

1

Это будет работать — особенно интересно при работе с несколькими значениями:

foreach ($arr1 as $key=>$value)
{
$arr3[] = $value.$arr2[$key];

}

var_dump($arr3);

выход:

array(1) { [0]=> string(10) "Windows5.0" }
0
По вопросам рекламы [email protected]