PHP合并数组函数array_merge用法分析
本文实例讲述了PHP合并数组函数array_merge用法。分享给大家供大家参考,具体如下:
合并数组是把一个数组追加到另一个数组中,主要应用array_merge()函数实现
语法如下:
array array_merge(array array1,array array2[,array...]);
注:
在合并时,如果输入的数组中有相同的字符串键名,则后面的值将覆盖前面的值;如果数组包含数字键名,后面的值不会覆盖原来的值,而是附加到后面
例如:
$arr1=array("图书"=>"PHP标准教程"); $arr2=array("网络类","定价","图书"=>"PHP从入门到精通","PHP"=>"95","元"); $res=array_merge($arr1,$arr2); print_r($res);
运行结果为:
Array ( [图书] => PHP从入门到精通 [0] => 网络类 [1] => 定价 [PHP] => 95 [2] => 元 )
说明:
array_merge_recursive()函数功能与array_merge()函数相似,也用来实现合并数组,但是它可以保留同时出现在两个数组中相同字符键值上的元素。
例如还是上述例子:
$arr1=array("图书"=>"PHP标准教程"); $arr2=array("网络类","定价","图书"=>"PHP从入门到精通","PHP"=>"95","元"); $res=array_merge_recursive($arr1,$arr2); print_r($res);
运行结果为:
Array ( [图书] => Array ( [0] => PHP标准教程 [1] => PHP从入门到精通 ) [0] => 网络类 [1] => 定价 [PHP] => 95 [2] => 元 )
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数学运算技巧总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家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] =&g
-
php合并数组中相同元素的方法
本文实例讲述了php合并数组中相同元素的方法.分享给大家供大家参考.具体如下: 关于重复数组的删除我们都介绍过N种方法了,今天这个例子有点不同就是 删除数组中相同的元素,只保留一个相同元素,具体实例代码如下: 复制代码 代码如下: <?php // 删除数组中相同元素,只保留一个相同元素 function formatArray($array) { sort($array); $tem = ""; $temarray = array(); $j = 0; for($i=0;$i&
-
php根据分类合并数组的方法实例详解
最简单的数组合并我们只要使用array_merge即可array_merge()将两个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面.返回作为结果的数组.数组键名为数字键名时,要合并的两个数组中有同名数字KEY的时候,使用array_merge()不会覆盖掉原来的值,而使用"+"合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值"抛弃"掉(注意:不是覆盖而是保留最先出现的那个值).例子: 复制代码 代码如下: $array
-
PHP中通过加号合并数组的一个简单方法分享
代码: 复制代码 代码如下: <?php $a = array('a' => 'a', 'b' => 'b'); $b = array('c' => 'c', 'd' => 'd'); $c = $a + $b; print('<pre>'); print_r($c); print('</pre>'); ?> 结果: 复制代码 代码如下: Array ( [a] => a [b] => b [c] => c [d] =>
-
PHP合并数组+号和array_merge的区别
PHP的数组融合一般有两种做法,一种是直接使用加号相加,另一种则是使用array_merge函数进行相加,两者之间有点区别: 1.相加会证数组中的自然index不被重置 2.相加方法中,被加的数组内的值不会被覆盖 3.merge函数中的自然index会被重置 4.merge函数,无所谓被merge和merge关系,越后面的array参数,其值,会覆盖较前面的array参数相同键的值 例子: 数组1: $arr1 = array( 10 => 'valueof10', 11 => 'valueo
-
php合并数组array_merge函数运算符加号与的区别
array_merge在参考手册中的说明如下: array_merge() 将两个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面.返回作为结果的数组. 如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值.然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面. 两个的区别是: 1.数组键名为数字键名时,要合并的两个数组中有同名数字KEY的时候,使用array_merge()不会覆盖掉原来的值,而使用"+"合并数组则会把最先出现的值作为最终
-
PHP合并数组+与array_merge的区别分析
主要区别是两个或者多个数组中如果出现相同键名,键名分为字符串或者数字,需要注意 1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值"抛弃"掉(不是覆盖) 2)键名为字符时,+仍然把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值"抛弃"掉,但array_merge()此时会覆盖掉前面相同键名的值 需要注意的是数组键形式 '数字' 等价于 数字 复制代码 代
-
php二维数组合并及去重复的方法
本文实例讲述了php二维数组合并及去重复的方法.分享给大家供大家参考.具体实现方法如下: $arr = array_merge($labels,$label); //合并需要合并的俩个数组 $key = id;//去重条件 $tmp_arr = array();//声明数组 foreach($arr as $k => $v) { if(in_array($v[$key], $tmp_arr)) //搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true { unset($arr
-
基于php实现随机合并数组并排序(原排序)
最近做了一个项目,其中有这样一个需求要实现,原有帖子列表A,现在需要在A中推广新业务B,那么需要在A列表中1:1混合B中的数据,随机混合,但是需要保持A和B两列原来的数据排序,具体详情请看下文. 原理 获知总共元素数量N: for循环N次,取随机数: 根据随机数依次从头获取A或B的值,推入新数组中: 代码: //随机合并两个数组元素,保持原有数据的排序不变(即各个数组的元素在合并后的数组中排序与自身原来一致) function shuffleMergeArray() { $mergeArray
-
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
本文实例总结了php常用数组array函数.分享给大家供大家参考,具体如下: array_combine 功能:用一个数组的值作为新数组的键名,另一个数组的值作为新数组的值 案例: <?php $a = array("one","two","three"); $b = array("一","二","三"); $c = array_combine($a,$b); print_r($c
-
PHP合并数组的2种方法小结
前言 在此前合并数组我一直用的是array_merge()这个函数,但最近我在换工作的时候遇到一道合并数组的面试题,我当时想的是将两个数组先转化为字符串,合并后再转化为数组输出,面试官说这个思路不太对,完了bulabula讲了一下数组基础的东西,然后确实是因为经验问题,或者是代码写太少,想不到还有什么方法,今天我百度了一下,原来还有'+'号, array_merge_recursive() ,也是可以用来合并数组的,根据我的记忆,我把那道题写出来看一下: $a = array('color'=>
随机推荐
- Lua面向对象之类和继承
- js自定义鼠标右键的实现原理及源码
- MUI 上拉刷新/下拉加载功能实例代码
- 谈谈js中的prototype及prototype属性解释和常用方法
- CodeIgniter安全相关设置汇总
- 深入了解Python数据类型之列表
- 对C语言中指针的理解与其基础使用实例
- Ajax局部更新导致JS事件重复触发问题的解决方法
- Query中click(),bind(),live(),delegate()的区别
- sqlserver对字段出现NULL值的处理
- 解决调试JDK源码时,不能查看变量的值问题
- Android数据加密之Base64编码算法的简单实现
- Python的Flask框架中Flask-Admin库的简单入门指引
- Android使alertDialog.builder不会点击外面和按返回键消失的方法
- C#往线程里传递参数的方法小结
- C语言 数与串之间转换的方法
- Java中的关键字synchronized 详解
- python实现远程控制电脑
- Python 实现域名解析为ip的方法
- Java原子变量类原理及实例解析