Operadores de Arrays
Exemplo | Nome | Resultado |
---|---|---|
$a + $b | União | União de $a e $b. |
$a == $b | Igualdade | true se $a e $b tem as mesmas chaves e valores. |
$a === $b | Identidade | true se $a e $b tem as mesmas chaves e valores, na mesma
ordem e com os mesmos tipos. |
$a != $b | Desigualdade | true se $a não é igual $b. |
$a <> $b | Desigualdade | true se $a não é igual $b. |
$a !== $b | Não identidade | true se $a não é idêntico a $b. |
O operador +
retorna o array à direta anexado
ao array da esquerda. Para chaves que existam nos dois arrays os elementos
do array à esquerda serão mantidos, os valores de mesma chave no
array da direita são ignorados.
<?php
$a = array("a" => "apple", "b" => "banana");
$b = array("a" => "pear", "b" => "strawberry", "c" => "cherry");
$c = $a + $b; // Union of $a and $b
echo "Union of \$a and \$b: \n";
var_dump($c);
$c = $b + $a; // Union of $b and $a
echo "Union of \$b and \$a: \n";
var_dump($c);
$a += $b; // Union of $a += $b is $a and $b
echo "Union of \$a += \$b: \n";
var_dump($a);
?>
Union of $a and $b: array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "banana" ["c"]=> string(6) "cherry" } Union of $b and $a: array(3) { ["a"]=> string(4) "pear" ["b"]=> string(10) "strawberry" ["c"]=> string(6) "cherry" } Union of $a += $b: array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "banana" ["c"]=> string(6) "cherry" }
Elementos do array são iguais para efeitos de comparação se eles possuem o mesmo valor e chave.
Example #1 Comparando arrays
<?php
$a = array("maçã", "banana");
$b = array(1 => "banana", "0" => "maçã");
var_dump($a == $b); // bool(true)
var_dump($a === $b); // bool(false)
?>