2015-10-01 69 views
1

我合併兩個數組(從MySQL數據庫值)在一起:如果一個值是一個數字,我怎樣才能將數組合併到一起?

$animals = array_merge($cat_array, $dog_array); 

$cat_array我得到這樣的結果:

array(3) { ["WX81A846YZ8P"]=> string(1) "1" ["WX81A846YZ"]=> string(1) "1" [123]=> string(1) "1" } 

$dog_array我得到這樣的結果:

array(1) { ["WX81A846YU"]=> string(1) "1" } 

for $animals我得到這個結果:

array(4) { ["WX81A846YZ8P"]=> string(1) "1" ["WX81A846YZ"]=> string(1) "1" [0]=> string(1) "1" ["WX81A846YU"]=> string(1) "1" } 

正如你所看到的,在該位置上,應該有123有一個0。那麼,爲什麼它不工作,如果我只有數組中的數字,我該如何解決這個問題?

+1

try concatenating'$ animals = $ cat_array + $ dog_array' – jitendrapurohit

回答

2

只需使用+

$animals = $cat_array + $dog_array; 

注意:如果你想從第二個數組的數組元素添加到第一陣列,而不是覆蓋從第一數組中的元素,而不是重新索引,使用+陣列union運算符

值的輸入陣列中與numeric keys will be renumbered with incrementing keys starting from zero in the result array.

Docs

+1

謝謝!大!這是行得通的。很簡單。爲什麼它不適用於'array_merge'?那麼爲什麼有人需要'array_merge'呢? – Jarla

+1

我已更新我的答案@Jarla –

+1

非常感謝您的解釋! – Jarla

相關問題