服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - php中用加号与用array_merge合并数组的区别深入分析

php中用加号与用array_merge合并数组的区别深入分析

2020-03-31 15:09PHP教程网 PHP教程

本篇文章是对php中用加号与用array_merge合并数组的区别进行了详细的分析介绍,需要的朋友参考下

我们首先给出两个数组

复制代码 代码如下:


    <?php 
     $r = array(1,2,3,4,5,6); 
     $e = array(7,8,9,10); 
    ?> 


下面我们用array_merge和加号来何必这两数组

复制代码 代码如下:


    <?php 
    print_r($r+e); // 输出<span style="font-family: Simsun;font-size:16px; ">Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) </span> 
    print "<br />"; 
    print_r(array_merge($r,$e)); // 输出<span style="font-family: Simsun;font-size:16px; ">Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 )</span> 
    ?> 


从这里可以看出,用array_merge合并数组一个数组中的值附加在前一个数组的后面。返回作为结果的数组如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。 然而用加号来合并数组如果键名相同,则取最先出现的数组值,后面的就直接忽略掉
下面我们来改变下前面给出的数组

复制代码 代码如下:


    <?php 
     $r = array('r'=>1,2,3,4,5,6); 
     $e = array(<span style="background-color: rgb(245, 250, 255); ">'r'=></span>7,8,9,10); 
    ?> 

 

复制代码 代码如下:


    <?php 
    print_r($r+e); // 输出Array ( [r] => 1 [0] => 2 [1] => 3 [2] => 4 [3] => 5 [4] => 6 ) 
    print "<br />"; 
    print_r(array_merge($r,$e)); // 输出Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 ) 
    ?> 


从这里可以看出,用array_merge合并数组一个数组中的值附加在前一个数组的后面。如果非数字键名相同,则后面数组的值会覆盖前面数组的值。 然而用加号来合并数组如果键名相同,则取最先出现的数组值,后面的就直接忽略掉

延伸 · 阅读

精彩推荐