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 文件上传系统手记
Oct 26 PHP
PHP 防恶意刷新实现代码
May 16 PHP
2个比较经典的PHP加密解密函数分享
Jul 01 PHP
thinkphp中memcache的用法实例
Nov 29 PHP
CodeIgniter自定义控制器MY_Controller用法分析
Jan 20 PHP
php求数组全排列,元素所有组合的方法
May 05 PHP
PHP调试及性能分析工具Xdebug详解
Feb 09 PHP
thinkphp5使用无限极分类
Feb 18 PHP
PHP 实现文件压缩解压操作的方法
Jun 14 PHP
基于laravel Request的所有方法详解
Sep 29 PHP
详解PHP中curl_multi并发的实现
Jun 08 PHP
搭建PhpStorm+PhpStudy开发环境的超详细教程
Sep 17 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
模板引擎Smarty深入浅出介绍
2006/12/06 PHP
关于BIG5-HKSCS的解决方法
2007/03/20 PHP
PHP 二维数组和三维数组的过滤
2016/03/16 PHP
JQuery 前台切换网站的样式实现
2009/06/22 Javascript
js 数组操作之pop,push,unshift,splice,shift
2014/01/29 Javascript
jQuery实现宽屏图片轮播实例教程
2015/11/24 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
AngularJs directive详解及示例代码
2016/09/01 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
ES6新特征数字、数组、字符串
2016/10/01 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
jQuery+ajax实现动态添加表格tr td功能示例
2018/04/23 jQuery
NodeJs搭建本地服务器之使用手机访问的实例讲解
2018/05/12 NodeJs
JS实现的判断方法、变量是否存在功能示例
2020/03/28 Javascript
使用Vue实现调用接口加载页面初始数据
2019/10/28 Javascript
element的el-table中记录滚动条位置的示例代码
2019/11/06 Javascript
vue axios封装httpjs,接口公用配置拦截操作
2020/08/11 Javascript
Python实现竖排打印传单手机号码易撕条
2015/03/16 Python
python生成随机图形验证码详解
2017/11/08 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
python编写简单端口扫描器
2019/09/04 Python
详解python statistics模块及函数用法
2019/10/27 Python
Python上下文管理器全实例详解
2019/11/12 Python
Python填充任意颜色,不同算法时间差异分析说明
2020/05/16 Python
python实现批量命名照片
2020/06/18 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
2020/08/07 Python
python中通过pip安装库文件时出现“EnvironmentError: [WinError 5] 拒绝访问”的问题及解决方案
2020/08/11 Python
Python Opencv实现单目标检测的示例代码
2020/09/08 Python
CSS实现限制字数功能当对象内文本溢出时显示省略标记
2014/08/20 HTML / CSS
小学后勤管理制度
2014/01/14 职场文书
勤奋学习演讲稿
2014/05/10 职场文书
党员廉洁自律个人总结
2015/02/13 职场文书
病假证明模板
2015/06/19 职场文书
中学政教处工作总结
2015/08/13 职场文书
pytorch实现线性回归以及多元回归
2021/04/11 Python
Python数据分析之pandas读取数据
2021/06/02 Python