(转载)php array_merge 和 两数组相加区别
生活随笔
收集整理的這篇文章主要介紹了
(转载)php array_merge 和 两数组相加区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
(轉(zhuǎn)載)http://www.cnblogs.com/shistou/archive/2013/03/16/2963586.html
PHP中兩個數(shù)組合并可以使用+或者array_merge,但之間還是有區(qū)別的,而且這些區(qū)別如果了解不清楚項目中會要命的!
?
主要區(qū)別是兩個或者多個數(shù)組中如果出現(xiàn)相同鍵名,鍵名分為字符串或者數(shù)字,需要注意?
1)鍵名為數(shù)字時,array_merge()不會覆蓋掉原來的值,但+合并數(shù)組則會把最先出現(xiàn)的值作為最終結(jié)果返回,而把后面的數(shù)組擁有相同鍵名的那些值“拋棄”掉(不是覆蓋)?
2)鍵名為字符時,+仍然把最先出現(xiàn)的值作為最終結(jié)果返回,而把后面的數(shù)組擁有相同鍵名的那些值“拋棄”掉,但array_merge()此時會覆蓋掉前面相同鍵名的值?
需要注意的是數(shù)組鍵形式 '數(shù)字' 等價于 數(shù)字
?
$a = array(0 => 'a', 1 => 'b'); $b = array(0 => 'c', 1 => 'b'); $c = $a + $b; var_dump($c); var_dump(array_merge($a, $b)); //輸出array(2) {[0]=>string(1) "a"[1]=>string(1) "b" } array(4) {[0]=>string(1) "a"[1]=>string(1) "b"[2]=>string(1) "c"[3]=>string(1) "b" }?
$a = array('a', 'b'); $b = array('0' => 'c', 1 => 'b'); $c = $a + $b; var_dump($c); var_dump(array_merge($a, $b)); //輸出array(2) {[0]=>string(1) "a"[1]=>string(1) "b" } array(4) {[0]=>string(1) "a"[1]=>string(1) "b"[2]=>string(1) "c"[3]=>string(1) "b" }?
$a = array(0 => 'a', 1 => 'b'); $b = array('0' => 'c', '1' => 'b'); $c = $a + $b; var_dump($c); var_dump(array_merge($a, $b)); //輸出array(2) {[0]=>string(1) "a"[1]=>string(1) "b" } array(4) {[0]=>string(1) "a"[1]=>string(1) "b"[2]=>string(1) "c"[3]=>string(1) "b" }轉(zhuǎn)載于:https://www.cnblogs.com/Robotke1/p/3336464.html
總結(jié)
以上是生活随笔為你收集整理的(转载)php array_merge 和 两数组相加区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cocos2d中使用颜色混合:加算,减算
- 下一篇: 关于64位WIN7下正确建立JAVA开发