加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中数组合并的两种方法及区别介绍

发布时间:2022-07-01 16:35:11 所属栏目:PHP教程 来源:互联网
导读:PHP中数组合并的两种方法及区别介绍 PHP数组合并两种方法及区别 如果是关联数组,如下: 代码如下: $a = array( where = uid=1, order = uid, ); $b = array( where = uid=2, order = uid desc, ); 1. array_merge,如果两个数组存在相同的key,后面的一个会覆盖
  PHP中数组合并的两种方法及区别介绍
 
  PHP数组合并两种方法及区别
  如果是关联数组,如下:
  代码如下:
 
  $a = array(
  'where' => 'uid=1',
  'order' => 'uid',
  );
  $b = array(
  'where' => 'uid=2',
  'order' => 'uid desc',
  );
 
  1. array_merge,如果两个数组存在相同的key,后面的一个会覆盖前面的
  代码如下:
 
  $c = array_merge($a, $b);
  var_export($c);//结果与原来的$b相同
  $d = array_merge($b, $a);
  var_export($d);//结果与原来的$a相同
 
  2. "+"操作符,如果两个数组存在相同的key,前面的一个会覆盖后面的
  代码如下:
 
  $c = $a + $b;
  var_export($c);//结果与原来的$a相同
  $d = $b + $a;
  var_export($d);//结果与原来的$b相同
 
 
  如果是数字索引数组,如下:
  代码如下:
 
  $a = array(
  1 => '1111111',
  2 => '222222222'
  );
  $b = array(
  4 => '33333333333',
  1 => '444444444'
  );
 
  1. array_merge. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中
  代码如下:
 
  $c = array_merge($a, $b);
  var_export($c);
  $d = array_merge($b, $a);
  var_export($d);
 
  输出:
  array (
  0 => '1111111',
  1 => '222222222',
  2 => '33333333333',
  3 => '444444444',
  )
  array (
  0 => '33333333333',
  1 => '444444444',
  2 => '1111111',
  3 => '222222222',
  )
  2. "+"操作符. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中,如果同样的key已经存在则不处理
  代码如下:
 
  $c = $a + $b;
  var_export($c);
  $d = $b + $a;
  var_export($d);
 
  输出:
  array (
  1 => '1111111',
  2 => '222222222',
  4 => '33333333333',
  )
  array (
  4 => '33333333333',
  1 => '444444444',
  2 => '222222222',
  )。

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读