最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP合并數(shù)組的2種方法小結(jié)

 更新時(shí)間:2016年11月24日 11:41:29   投稿:daisy  
大家都知道PHP中兩個(gè)數(shù)組合并可以使用+或者array_merge,但之間還是有區(qū)別的,而且這些區(qū)別如果了解不清楚項(xiàng)目中會(huì)要命的!這篇文章給加總結(jié)介紹了PHP合并數(shù)組的2種方法,有需要的朋友們可以參考借鑒,下面來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

在此前合并數(shù)組我一直用的是array_merge()這個(gè)函數(shù),但最近我在換工作的時(shí)候遇到一道合并數(shù)組的面試題,我當(dāng)時(shí)想的是將兩個(gè)數(shù)組先轉(zhuǎn)化為字符串,合并后再轉(zhuǎn)化為數(shù)組輸出,面試官說這個(gè)思路不太對(duì),完了bulabula講了一下數(shù)組基礎(chǔ)的東西,然后確實(shí)是因?yàn)榻?jīng)驗(yàn)問題,或者是代碼寫太少,想不到還有什么方法,今天我百度了一下,原來還有‘+'號(hào),

array_merge_recursive() ,也是可以用來合并數(shù)組的,根據(jù)我的記憶,我把那道題寫出來看一下:

$a = array('color'=>'red',5,6); 
$b = array('color'=>'blue','type'=>'fruit',6,7); 
$arr = array_merge($a,$b); 
var_dump($arr);
array (size=6)
 'color' => string 'blue' (length=4)
 0 => int 5
 1 => int 6
 'type' => string 'fruit' (length=5)
 2 => int 6
 3 => int 7

要求是在不使用array_merge()的情況的得到相同的效果;

array_merge()合并數(shù)組會(huì)把前一個(gè)數(shù)組中關(guān)聯(lián)形式數(shù)組的鍵值相同的覆蓋,索引形式的則按鍵值順序合并在一起)

1.先用array_merge_recursive()函數(shù)來合并一下:

$a = array('color'=>'red',5,6);
$b = array('color'=>'blue','type'=>'fruit',6,7);
$arr = array_merge_recursive($a,$b);
var_dump($arr);

輸出結(jié)果:

array (size=6)
 'color' => 
 array (size=2)
  0 => string 'red' (length=3)
  1 => string 'blue' (length=4)
 0 => int 5
 1 => int 6
 'type' => string 'fruit' (length=5)
 2 => int 6
 3 => int 7

從結(jié)果可以看出array_merge_recursive()函數(shù)會(huì)把鍵值相同的值以一個(gè)新的關(guān)聯(lián)數(shù)組的形式返回,并以這個(gè)鍵值作為二維數(shù)組的鍵值,其他索引形式則不會(huì)受影響。

比起array_merge()的話就不會(huì)出現(xiàn)后面的數(shù)組鍵和前一個(gè)相同就把前一個(gè)的值覆蓋的情況了。

2.再看下‘+'號(hào)合并數(shù)組的情況:

$a = array('color'=>'red',5,6);
$b = array('color'=>'blue','type'=>'fruit',6,7);
$arr = $a+$b;
var_dump($arr);

輸出結(jié)果:

array (size=4)
 'color' => string 'red' (length=3)
 0 => int 5
 1 => int 6
 'type' => string 'fruit' (length=5)

從這個(gè)結(jié)果可以看出,使用‘+'號(hào)合并數(shù)組,是前面覆蓋后面的,和array_merge()相反,而且它比array_merge()更狠,如果以索引形式出現(xiàn)的數(shù)組的內(nèi)容,合并后如果鍵值相同也會(huì)覆蓋掉!

總結(jié)

好了,以上就是這篇文章的全部內(nèi)容了,是我個(gè)人的一些總結(jié),本人入行不久,火候欠佳,如有總結(jié)不到位地方請(qǐng)各位高手批評(píng)指正,一定虛心接納!

相關(guān)文章

最新評(píng)論

清河县| 景泰县| 理塘县| 获嘉县| 彰化市| 自贡市| 上思县| 庆城县| 华坪县| 沐川县| 广水市| 璧山县| 汝阳县| 涞源县| 偏关县| 汉源县| 九龙坡区| 鸡泽县| 富蕴县| 隆化县| 宽城| 九龙坡区| 濮阳县| 廊坊市| 都江堰市| 桓台县| 泊头市| 兰考县| 河曲县| 文山县| 富裕县| 新丰县| 永登县| 育儿| 龙州县| 保亭| 苍山县| 东城区| 大洼县| 舞阳县| 株洲市|