array_merge和+的区别

2019-08-15  本文已影响0人  lookphp

当键名相同时

<?php
//键值类型为字符串,且键名相同
$arr1 = array('a'=>'PHP');
$arr2 = array('a'=>'Python');

//array_merge 中,后面的值会把前面的覆盖掉,Array([a] => Python)
print_r(array_merge($arr1,$arr2));

//+最先出现的值作为结果,后面键名相同的会被抛弃
print_r(($arr1+$arr2));

echo PHP_EOL,'=========================',PHP_EOL;

$arr3 = array('JAVA','PHP');
$arr4 = array('PYTHON','PHP');

$ret = array_merge($arr3,$arr4);
print_r($ret);

print_r($arr3+$arr4);
echo PHP_EOL,'=========================',PHP_EOL;

$arr5 = array(1=>'1',2=>'2');
$arr6 = array(1=>'1',2=>'3',8=>'2');

print_r($arr5+$arr6);
echo PHP_EOL,'=========================',PHP_EOL;

$arr7 = array("a"=>"PHP","C");
$arr8 = array("a"=>"JAVA","C","PYTHON");

print_r(array_merge_recursive($arr7,$arr8));

Array
(
    [a] => Python
)
Array
(
    [a] => PHP
)

=========================
Array
(
    [0] => JAVA
    [1] => PHP
    [2] => PYTHON
    [3] => PHP
)
Array
(
    [0] => JAVA
    [1] => PHP
)

=========================
Array
(
    [1] => 1
    [2] => 2
    [8] => 2
)

=========================
Array
(
    [a] => Array
        (
            [0] => PHP
            [1] => JAVA
        )

    [0] => C
    [1] => C
    [2] => PYTHON
)

参考文档:
https://www.cnblogs.com/phpper/p/9144125.html

上一篇 下一篇

猜你喜欢

热点阅读