溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

PHP中用+號連接數(shù)組的結(jié)果是什么

發(fā)布時間:2021-07-13 15:59:32 來源:億速云 閱讀:127 作者:chen 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“PHP中用+號連接數(shù)組的結(jié)果是什么”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

 

PHP中用+號連接數(shù)組的結(jié)果是?

我們在開發(fā)中,有時候會將兩個數(shù)組合并連接起來,這個時候要注意了,千萬不要偷懶直接使用+號哦,為什么呢?我們看看以下代碼:


$a = [1, 2];
$b = [4, 5, 6];

$c = $a + $b;
print_r($c);

 

請用第一直接告訴我它的結(jié)果是什么?或許我這么問你應(yīng)該能猜到,它的結(jié)果是:


Array
(
   [0] => 1
   [1] => 2
   [2] => 6
)

 

看出來了吧,用+號操作符連接的數(shù)組,結(jié)果取的是并集。也就是根據(jù)鍵,相同鍵的不會覆蓋,沒有鍵加入進(jìn)來形成一個新數(shù)組。并不是將兩個數(shù)組真的加起來。

如果我們用$b+$a呢?那么結(jié)果就是$b的內(nèi)容。


$c = $b + $a;
print_r($c);

Array
(
   [0] => 4
   [1] => 5
   [2] => 6
)

 

那么我們要獲得1,2,4,5,6這樣一個數(shù)組要怎么辦呢?沒錯,使用array_merge()函數(shù),請注意數(shù)組Key的位置:


$c = array_merge($a, $b);
print_r($c);

Array
(
   [0] => 1
   [1] => 2
   [2] => 4
   [3] => 5
   [4] => 6
)

$c = array_merge($b, $a);
print_r($c);

Array
(
   [0] => 4
   [1] => 5
   [2] => 6
   [3] => 1
   [4] => 2
)

 

如果是key/value形式的Hash數(shù)組呢?結(jié)果也是一樣的,$a中沒有鍵將合并過來,相同的鍵將不處理。


$a = ['a' => 1, 'b' => 2];
$b = ['a' => 4, 'b' => 5, 'c' => 6];

print_r($a+$b);

Array
(
   [a] => 1
   [b] => 2
   [c] => 6
)

$c = array_merge($a, $b);
print_r($c);

$c = array_merge($b, $a);
print_r($c);

Array
(
   [a] => 1
   [b] => 2
   [c] => 6
)
Array
(
   [a] => 4
   [b] => 5
   [c] => 6
)
Array
(
   [a] => 1
   [b] => 2
   [c] => 6
)

 

上述Hash數(shù)組,使用array_merge()函數(shù)的結(jié)果和使用+號的結(jié)果是一樣的,這是因為他們還是進(jìn)行了鍵的對比。所以合并后的數(shù)組不會增加內(nèi)容,如果是未定義下標(biāo)的則會直接以數(shù)字下標(biāo)添加進(jìn)去。

最后,我們再試試.操作符的連接:


$c = $a . $b;
print_r($c);

ArrayArray

 

好吧,強轉(zhuǎn)成string類型的字符串再拼接起來了,并無特別的意義。

測試代碼:https://github.com/zhangyue0503/dev-blog/blob/master/php/201911/source/PHP%E4%B8%AD%E7%94%A8%2B%E5%8F%B7%E8%BF%9E%E6%8E%A5%E6%95%B0%E7%BB%84%E7%9A%84%E7%BB%93%E6%9E%9C%E6%98%AF%EF%BC%9F.php

參考文檔:https://www.php.net/manual/zh/language.operators.array.php

“PHP中用+號連接數(shù)組的結(jié)果是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI