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


Posted in PHP onJune 03, 2013

我们首先给出两个数组

    <?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合并数组一个数组中的值附加在前一个数组的后面。如果非数字键名相同,则后面数组的值会覆盖前面数组的值。 然而用加号来合并数组如果键名相同,则取最先出现的数组值,后面的就直接忽略掉
PHP 相关文章推荐
如何在PHP中使用Oracle数据库(3)
Oct 09 PHP
php empty函数 使用说明
Aug 10 PHP
php5 图片验证码实现代码
Dec 11 PHP
phpmyadmin 常用选项设置详解版
Mar 07 PHP
PHP高自定义性安全验证码代码
Nov 27 PHP
PHP中操作ini配置文件的方法
Apr 25 PHP
php中socket的用法详解
Oct 24 PHP
php生成shtml类用法实例
Dec 09 PHP
php使用指定编码导出mysql数据到csv文件的方法
Mar 31 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
Oct 28 PHP
php批量修改表结构实例
May 24 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
Aug 30 PHP
PHP在线生成二维码代码(google api)
Jun 03 #PHP
深入探讨:Nginx 502 Bad Gateway错误的解决方法
Jun 03 #PHP
深入php-fpm的两种进程管理模式详解
Jun 03 #PHP
PHP 异步执行方法,模拟多线程的应用分析
Jun 03 #PHP
基于PHP异步执行的常用方式详解
Jun 03 #PHP
php生成二维码的几种方式整理及使用实例
Jun 03 #PHP
深入PHP异步执行的详解
Jun 03 #PHP
You might like
PHP json_decode函数详细解析
2014/02/17 PHP
php+jQuery递归调用POST循环请求示例
2016/10/14 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
2020/04/07 PHP
Laravel框架源码解析之入口文件原理分析
2020/05/14 PHP
javascript dom代码应用 简单的相册[firefox only]
2010/06/12 Javascript
调试代码导致IE出错的避免方法
2014/04/04 Javascript
JavaScript子窗口调用父窗口变量和函数的方法
2015/10/09 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
总结在前端排序中遇到的问题
2016/07/19 Javascript
JSON对象 详解及实例代码
2016/10/18 Javascript
JavaScript仿聊天室聊天记录
2016/12/27 Javascript
如何使用vuejs实现更好的Form validation?
2017/04/07 Javascript
Vue使用虚拟dom进行渲染view的方法
2019/12/26 Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
2020/07/20 Javascript
[01:32]TI珍贵瞬间系列(一)
2020/08/26 DOTA
python实现的登录和操作开心网脚本分享
2014/07/09 Python
wxPython框架类和面板类的使用实例
2014/09/28 Python
Python基于opencv的图像压缩算法实例分析
2018/05/03 Python
详解Python装饰器
2019/03/25 Python
Python3日期与时间戳转换的几种方法详解
2019/06/04 Python
libreoffice python 操作word及excel文档的方法
2019/07/04 Python
关于PyTorch 自动求导机制详解
2019/08/18 Python
Python 处理文件的几种方式
2019/08/23 Python
python__name__原理及用法详解
2019/11/02 Python
Python FtpLib模块应用操作详解
2019/12/12 Python
基于python实现复制文件并重命名
2020/09/16 Python
纯CSS3制作漂亮带动画效果的主机价格表
2015/04/25 HTML / CSS
巧用HTML5给按钮背景设计不同的动画简单实例
2016/08/09 HTML / CSS
伦敦著名的运动鞋综合商店:Footpatrol
2019/03/25 全球购物
荷兰最大的儿童服装店:The Kids Republic
2019/04/13 全球购物
室内设计专业学生的自我评价分享
2013/11/27 职场文书
台风停课通知
2015/04/24 职场文书
新闻通讯稿模板
2015/07/22 职场文书
Python中文纠错的简单实现
2021/07/07 Python
mysql自增长id用完了该怎么办
2022/02/12 MySQL
JavaScript展开运算符和剩余运算符的区别详解
2022/02/18 Javascript