PHP (02) Cadenas y matrices (10) Operadores de matrices
PHP permite también el uso de operadores entre matrices según la siguiente lista:
- $a + $b produce la unión de $a y $b.
- $a == $b produce TRUE si $a y $b tienen los mismos elementos.
- $a === $b produce TRUE si $a y $b tienen los mismos elementos en el mismo orden.
- $a != $b produce TRUE si $a no es igual a $b.
- $a <> $b produce TRUE si $a no es igual a $b.
- $a !== $b produce TRUE si $a no es idéntico a $b.
Podemos ver en el siguiente ejemplo como funciona en un ifelse, uno de estos operadores:
<?php $tortillaPatatas[0] = "huevo"; $tortillaPatatas[1] = "patatas"; $tortillaPatatas[2] = "aceite"; print_r($tortillaPatatas); echo '<p></p>'; $tortillaQueso[0]= "huevo"; $tortillaQueso[1]= "queso"; $tortillaQueso[2]= "aceite"; print_r($tortillaQueso); if ($tortillaPatatas == $tortillaQueso){ echo '<p> \$tortillaPatatas tiene los mismos elementos que \$tortillaQueso'; }else { echo '<p> $tortillaPatatas <b>NO</b> tiene los mismos elementos que $tortillaQueso</p>'; } ?>
Comparar matrices
<?php $tortillaPatatas[0] = "huevo"; $tortillaPatatas[1] = "patatas"; $tortillaPatatas[2] = "aceite"; print_r($tortillaPatatas); echo '<p></p>'; $tortillaQueso[0]= "huevo"; $tortillaQueso[1]= "queso"; $tortillaQueso[2]= "aceite"; print_r($tortillaQueso); $diferencia = array_diff($tortillaPatatas, $tortillaQueso); echo '<h2>Diferencia</h2>'; foreach ($diferencia as $key => $valor) { echo "<p>Clave: $key; valor: $valor "; } $similitudes = array_intersect($tortillaQueso, $tortillaPatatas); echo '<h2>Similitudes</h2>'; foreach ($similitudes as $key => $valor) { echo "<p>Clave: $key; valor: $valor "; } ?>
Array
(
[0] => huevo
[1] => patatas
[2] => aceite
)
Array
(
[0] => huevo
[1] => queso
[2] => aceite
)
Diferencia
Clave: 1; valor: patatas
Similitudes
Clave: 0; valor: huevo
Clave: 2; valor: aceite