array_merge_recursive
2 つのデータ構造をマージするために使用しようとしています。
<?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
を除いて、まったく同じであると予想されます。代わりに、このlive exampleに見られるように、古い値を含む配列に変換され、値がそれに追加されます。modules.bar
false
bar
false
ドキュメンテーション ページには、これが数値キーの場合に発生することが示されていますが、これらはすべて文字列キーです。誰でもこれに光を当てることができますか?