$php -a
php > $data1 = ['tag' => 'div', 'classes' => [1,2,3]];
php > $data2 = ['tag' => 'section', 'classes' => [2,3,4,5,6]];
php > $result = array_merge_recursive($data1, $data2);
php > print_r($result);
Array
(
[tag] => Array
(
[0] => div
[1] => section
)
[classes] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 2
[4] => 3
[5] => 4
[6] => 5
[7] => 6
)
)
以便在Docs描述:PHP-array_merge_recursive()沒有陣相同的鍵
如果輸入陣列具有相同的字符串鍵,則對於這些鍵的值被合併在一起,成爲一個數組[...]
在PHP中是否有一個現有的函數基本上是相同的,但沒有將相同的鍵合併到數組中,以便重寫值並保存鍵?
在這種情況下,我想有一個結果:
Array
(
[tag] => section
[classes] => Array
(
[0] => 1
[1] => 2
[2] => 3
[5] => 4
[6] => 5
[7] => 6
)
)
在問候@JustOnUnderMillions的評論:
是的,我在想,是不是我期望這樣的功能的,我期待一個結果,因爲我正在尋找。
如果值被覆蓋那麼你的結果將是'$ data2' –
爲內'陣列classes'關鍵:如果* ([0] => 1 [1] => 2 [2] => 3 [5] => 4 [ ( [0] => 2 [1] => 3 [2] => 4 [3] => 5 01 => 5 [7] =>[4] => 6 )' – RomanPerekhrest
您是否需要合併是遞歸的? –