【原创】关于PHP 中 array_merge() 和 array_replace() 区别

blogdaren 2019-06-10 抢沙发 315人次

举例说明:

<?php
$origin = array(
    'k1' => 'v1',
    'k2' => 'v2',
    '100',
);

$replace = array(
    'k1' => 'new value',
    'k3' => 'v3',
    '200',
);

print_r(array_merge($origin, $replace));
print_r(array_replace($origin, $replace)); 

运行结果:

Array
(
    [k1] => new value
    [k2] => v2
    [0] => 100
    [k3] => v3
    [1] => 200
)
Array
(
    [k1] => new value
    [k2] => v2
    [0] => 200
    [k3] => v3
)

结论总结:

1、两者对于关联索引处理机制是一样的:完全覆盖替换;

2、两者对于数字索引处理是不一样的:array_merge是根据数字索引进行递增追加元素,而array_replace则完全是覆盖替换;

版权声明:除非注明,本文由( blogdaren )原创,转载请保留文章出处。

本文链接:【原创】关于PHP 中 array_merge() 和 array_replace() 区别

发表评论:

您的昵称:
电子邮件:
个人主页: