• 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',
    )

  • 相关阅读:
    C++primer习题3.13
    Indesign技巧
    《转载》虚函数在对象中的内存布局
    C++new失败后如何处理
    sizeof的用法
    转载 C++中虚继承防止二义性
    字符串反转
    回文写法
    C++术语
    QT+VS2008
  • 原文地址:https://www.cnblogs.com/mafeng/p/5638339.html
Copyright © 2020-2023  润新知