使用字符串键的奇数array_merge_recursive行为

时间:2013-04-25 20:11:41

标签: php arrays merge

我正在尝试使用array_merge_recursive合并两个数据结构。

<?php
$testSite = array(
    'name' => 'test site',
    'modules' => array(
        'foo' => 'true',
        'bar' => 'true'
    )
);
$testData = array(
    'modules' => array(
        'bar' => 'false'
    )
);

$testSite = array_merge_recursive($testSite, $testData);

请注意,我使用字符串而不是布尔值来进行调试打印

我希望$testSite在此代码运行后完全相同,但modules.bar属性除外,我期望将其更改为false。相反,正如live example所示,bar变成了一个包含旧值的数组,并且false附加了该值。

文档页面显示这是数字键会发生的情况,但这些都是字符串键。任何人都可以对此有所了解吗?

1 个答案:

答案 0 :(得分:3)