Codeigniter:在另一个数组中附加一个数组

时间:2017-05-26 14:04:25

标签: php arrays codeigniter

您好我正在尝试将一个数组附加到另​​一个数组中。当我为新旧的print_r()时,这就是我得到的  新的

 Array
(
    [0] => [1,2,3,4,5,6]
)

旧的

 Array
    (
        [0] => [1,2,3,4,5]
    )

我正在循环这样的数组,但这不起作用,如果我做错了,请帮助我

  foreach($newarray  as $value){

    array_push($oldarray, $value);
}

2 个答案:

答案 0 :(得分:0)

使用像

这样的array_merge()函数
$merged_arr = array_merge($oldarray,$newarray);

它将解决您的问题。

答案 1 :(得分:0)

有两种方法可以做到这一点。

假设$oldArray$newArray都只有一个项目。

$oldArray = [[1, 2, 3, 4, 5, 6]];
$newArray = [[7, 8, 9, 10, 11, 12]];
$oldArray[0] = array_merge($oldArray[0], $newArray[0]);
var_dump($oldArray);

var_dump outputs

array (size=1)
  0 => 
    array (size=12)
      0 => int 1
      1 => int 2
      2 => int 3
      3 => int 4
      4 => int 5
      5 => int 6
      6 => int 7
      7 => int 8
      8 => int 9
      9 => int 10
      10 => int 11
      11 => int 12

或与foreach循环完全相同的结果

$oldArray = [[1, 2, 3, 4, 5, 6]];
$newArray = [[7, 8, 9, 10, 11, 12]];
foreach($newArray as $items)
{
    foreach($items as $key => $value)
    {
        $oldArray[0][] = $value;
    }
}
var_dump($oldArray);

我的钱array_merge是要走的路。

如果您想知道所显示的语法。

$oldarray[] = $value;

array_push($oldarray, $value);

产生完全相同的结果。 PHP计算器生成实际执行的相同机器代码。第一种语法需要更少的输入,IMO更容易阅读。

我也使用短语法来创建数组。

$oldArray = [[1, 2, 3, 4, 5, 6]];

$oldArray = array(array(1, 2, 3, 4, 5, 6));

产生相同的结果。你更喜欢打字和/或阅读?