【发布时间】:2013-04-25 20:11:40
【问题描述】:
我正在尝试使用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 被附加到该数组。
文档页面显示这是数字键会发生的情况,但这些都是字符串键。任何人都可以对此有所了解吗?
【问题讨论】: