martes, 12 de enero de 2016

6 - Tutorial de PHP7 - Operadores de Comparación




En esta parte del Tutorial de PHP7 continuamos con la referencia del lenguaje, concretamente con los operadores de comparación, prestando especial atención a los dos nuevos operadores disponibles desde PHP 7, los operadores: nave espacial y fusión de null.

Referencia del Lenguaje - Operadores de comparación

Los operadores de comparación, como su nombre lo indica, permiten comparar dos valores. Los operadores de comparación disponibles en PHP son:
 
EjemploNombreResultado
$a == $b Igual TRUE si $a es igual a $b después de la manipulación de tipos.
$a === $b Idéntico TRUE si $a es igual a $b, y son del mismo tipo.
$a != $b Diferente TRUE si $a no es igual a $b después de la manipulación de tipos.
$a <> $b Diferente TRUE si $a no es igual a $b después de la manipulación de tipos.
$a !== $b No idéntico TRUE si $a no es igual a $b, o si no son del mismo tipo.
$a < $b Menor que TRUE si $a es estrictamente menor que $b.
$a > $b Mayor que TRUE si $a es estrictamente mayor que $b.
$a <= $b Menor o igual que TRUE si $a es menor o igual que $b.
$a >= $b Mayor o igual que TRUE si $a es mayor o igual que $b.
$a <=> $b Nave espacial Un integer menor que, igual a, o mayor que cero cuando $a es respectivamente menor que, igual a, o mayor que $b. Disponible a partir de PHP 7.
$a ?? $b ?? $c Fusión de null El primer operando de izquierda a derecha que exista y no sea NULL. NULL si no hay valores definidos y no son NULL. Disponible a partir de PHP 7.


El código del script del capítulo operadores-comparacion.php ...

<?php 
$numero1 = 2;
$numero2 = '2';

echo '<p>Supuesto 1. igual ==.</p>';
var_dump($numero1 == $numero2);

echo '<p>Supuesto 2. idéntico ===.</p>';
var_dump($numero1 === $numero2);

echo '<p>Supuesto 3. diferente != ó <></p>';
var_dump(3 <> 2);

echo '<p>Supuesto 4. menor que <</p>';
var_dump(3 < 2);

echo '<p>Supuesto 5. menor ó igual que. <=</p>';
var_dump(1 <= 2);

echo '<p>Supuesto 6. Nave espacial <=>.</p>';
$a = 0;
$b = 1;
echo '<p>Si $a es menor que $b regresa -1. Si $a es igual a $b regresa 0. Si $a es mayor que $b regresa 1</p>';
var_dump($a <=> $b);

echo '<p>Supuesto 7. Fusión de null.</p>';
$e = 'hola soy e';
$c = $d ?? $e ?? 'nada';
var_dump($c);