PHP – 陣列運算子



PHP 定義了以下一組符號,用於對陣列資料型別進行運算 -

符號 示例 名稱 結果
+ $a + $b 聯合 $a 和 $b 的聯合。
== $a == $b 相等 如果 $a 和 $b 具有相同的鍵/值對,則為 TRUE。
=== $a === $b 恆等 如果 $a 和 $b 以相同的順序且具有相同的型別,具有相同的鍵/值對,則為 TRUE。
!= $a != $b 不相等 如果 $a 不等於 $b,則為 TRUE。
<> $a <> $b 不相等 如果 $a 不等於 $b,則為 TRUE。
!== $a !== $b 非恆等 如果 $a 與 $b 不相同,則為 TRUE。

聯合運算子將右側陣列追加到左側陣列。如果兩個陣列都存在某個鍵,則將使用左側陣列中的元素,而忽略右側陣列中的匹配元素。

示例:PHP 中的聯合運算子

以下示例演示瞭如何在 PHP 中使用聯合運算子 -

<?php
   $arr1=array("phy"=>70, "che"=>80, "math"=>90);
   $arr2=array("Eng"=>70, "Bio"=>80,"CompSci"=>90);
   $arr3=$arr1+$arr2;
   var_dump($arr3);
?>

它將生成以下 **輸出** -

array(6) {
   ["phy"]=>
   int(70)
   ["che"]=>
   int(80)
   ["math"]=>
   int(90)
   ["Eng"]=>
   int(70)
   ["Bio"]=>
   int(80)
   ["CompSci"]=>
   int(90)
}

示例:當兩個陣列相等時

如果兩個陣列具有相同的鍵值對,則稱它們相等。

在以下示例中,我們有一個索引陣列和另一個關聯陣列,其鍵對應於第一個陣列中元素的索引。因此,兩者相等。

<?php
   $arr1=array(0=>70, 2=>80, 1=>90);
   $arr2=array(70,90,80);
   var_dump ($arr1==$arr2);
   var_dump ($arr2!=$arr1);
?>

它將生成以下 **輸出** -

bool(true)
bool(false)

示例:當兩個陣列相同

當且僅當兩個陣列都具有相同的鍵值對集且順序相同,它們才相同。

<?php
   $arr1=array(0=>70, 1=>80, 2=>90);
   $arr2=array(70,90,80);
   var_dump ($arr1===$arr2);
   $arr3=[70,80,90];
   var_dump ($arr3===$arr1);
?>

它將生成以下 **輸出** -

bool(false)
bool(true)
廣告