解析php中array_merge与array+array的区别

yipeiwu_com6年前PHP代码库
array_merge是丢弃原来的数字的key,而保留字符串形式的key,然后组成一个新的数组,不管键名是否一样,都不合并,除非键名和value同时一样并且还必须是字符串形式的key才合并。而array+array就是不管你是什么情况,它都只会先把前面的数组的数据先放到新生成的数组中,之后再看第二个array是否比第一个数组个数多,多的就添加进来,它只数个数,但是这种情况它会添加进来:$a = array('d'=>'aass','e'=>'adsdfd','asd'=>'asdsdd','ddfg'=>'dssdf');
复制代码 代码如下:

$b = array('d'=>'adddd','adsdfd','asdfsddddd','d'=>'aass');
$d = $a + $b;
$e = array_merge($a,$b);
var_dump($d);
var_dump($e);

打印:
array
  'd' => string 'aass' (length=4)
  'e' => string 'adsdfd' (length=6)
  'asd' => string 'asdsdd' (length=6)
  'ddfg' => string 'dssdf' (length=5)
  0 => string 'adsdfd' (length=6)
  1 => string 'asdfsddddd' (length=10)
array
  'd' => string 'aass' (length=4)
  'e' => string 'adsdfd' (length=6)
  'asd' => string 'asdsdd' (length=6)
  'ddfg' => string 'dssdf' (length=5)
  0 => string 'adsdfd' (length=6)
  1 => string 'asdfsddddd' (length=10)

相关文章

php计算数组不为空元素个数的方法

复制代码 代码如下: <?php $arr = array( 1=>"11", 2=>"22", 3=>"33", 4=>"" ); print_r(cou...

php文件上传表单摘自drupal的代码

drupal文件上传表单的例子 复制代码 代码如下: function upload_form() { $form = array(); // If this #attribute is...

浅谈COOKIE和SESSION区别

一、cookie介绍 cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够...

PHP里8个鲜为人知的安全函数分析

本文实例讲述了PHP里8个鲜为人知的安全函数。分享给大家供大家参考。具体分析如下: 安全是编程非常重要的一个方面。在任何一种编程语言中,都提供了许多的函数或者模块来确保程序的安全性。在现...

关于js与php互相传值的介绍

JS是前台的语言,PHP是后台的语言,初学时会经常出现前后台分不清的情况(我当初就是这样的,现在有时也在犯),我当初的想法是就把前后台当成两个岛,他们是无法跨越的,HTML就像一座桥,当...