zoukankan      html  css  js  c++  java
  • PHP中数组合并的两种方法及区别介绍

    PHP数组合并两种方法及区别 
    如果是关联数组,如下: 

    复制代码代码如下:

    $a = array( 
    'where' => 'uid=1', 
    'order' => 'uid', 
    ); 
    $b = array( 
    'where' => 'uid=2', 
    'order' => 'uid desc', 
    ); 



    1. array_merge,如果两个数组存在相同的key,后面的一个会覆盖前面的 

    复制代码代码如下:

    <?php 
    $c = array_merge($a, $b); 
    var_export($c);//结果与原来的$b相同 
    $d = array_merge($b, $a); 
    var_export($d);//结果与原来的$a相同 


    2. "+"操作符,如果两个数组存在相同的key,前面的一个会覆盖后面的 

    复制代码代码如下:

    <?php 
    $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每个数组元素,然后将每个元素压入一个新堆栈当中 

    复制代码代码如下:

    <?php 
    $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已经存在则不处理 

    复制代码代码如下:

    <?php 
    $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', 
    )

  • 相关阅读:
    矩阵——矩阵介绍
    CentOS6.6x86_64 部署 Nginx1.62+MySQL5.6.20+PHP5.6.4
    Linux Stu
    Linux Tips
    网页嵌入百度地图和使用百度地图api自定义地图的详细步骤
    商务通被视频覆盖
    酷炫的响应式导航栏
    织梦DeDeCms列表分页和内容页分页错位解决办法
    form表单中method的get和post区别
    PC端手机访问跳转手机站点
  • 原文地址:https://www.cnblogs.com/lixiuran/p/4090564.html
Copyright © 2011-2022 走看看