Diferencia entre los operadores de comparación == y === en PHP

Subodh Poudel 30 enero 2023
  1. Compare un valor entero y un valor de coma flotante con el operador de comparación doble (==) y triple (===) igual a igual en PHP
  2. Compare un valor entero y un valor booleano con el operador de comparación Double (==) y Triple (===) Equals en PHP
  3. Compare un valor entero y un valor de cadena con el operador de comparación doble y triple igual
Diferencia entre los operadores de comparación == y === en PHP

Este artículo presentará la diferencia entre los operadores de comparación doble igual == y triple igual === en PHP. La diferencia significativa es que el operador de comparación doble igual compara el valor de los dos operandos. Por el contrario, el operador de comparación triple es igual a comparar el valor y el tipo de operandos.

Introduciremos un método para diferenciar el operador de comparación dobles iguales y triples iguales comparando un valor entero y un valor de coma flotante. Usaremos el operador ternario como declaración condicional.

El segundo método compara el operador de comparación doble igual y triple igual con un número entero y un valor booleano. También usaremos el operador ternario en este método.

También demostraremos la comparación de un valor entero y una cadena usando el operador de comparación doble igual y triple igual. Usaremos la función var_dump() para volcar la comparación en este método.

Compare un valor entero y un valor de coma flotante con el operador de comparación doble (==) y triple (===) igual a igual en PHP

Podemos comparar los dos mismos valores de diferentes tipos usando los operadores de comparación. Este método compara un número entero y un punto flotante que tienen el mismo valor. Podemos usar el operador ternario para comparar los operandos y la función var_dump() para volcar sus valores booleanos.

Por ejemplo, cree una variable $a y almacene el valor entero 5 en ella. Almacene un valor de coma flotante 5.0 en otra variable $b. Compare las dos variables con el operador de comparación triple utilizando el operador ternario. El valor verdadero devuelve true y el valor falso devuelve false en el operador ternario. Almacene la operación en la variable $c. De manera similar, compare las dos variables con operador doble igual con el operador ternario y almacene la operación en la variable $d. Utilice las funciones var_dump() en las variables $c y $d.

La salida del ejemplo de código devuelve el valor false para el operador triple igual y el valor true para el operador doble igual. El valor 5 es de tipo entero y el valor 5.0 es de tipo flotante, aunque el valor es el mismo. Por lo tanto, el operador triple igual devuelve un valor falso y el operador doble devuelve un valor verdadero.

Código de ejemplo:

#php 7.x 
<?php
$a = 5; 
$b = 5.0; 
$c = $a===$b ? true : false;
$d = $a==$b ? true : false;
var_dump($c);
var_dump($d);
?>

Producción :

bool(false) bool(true)

Compare un valor entero y un valor booleano con el operador de comparación Double (==) y Triple (===) Equals en PHP

Este método compara un valor entero 1 y el valor booleano true. El valor entero 1 denota el valor de verdad. Podemos usar el operador ternario como en el primer método. Por ejemplo, almacene el valor entero 1 en una variable $a. Cree otra variable $b y almacene un valor booleano true en ella. Utilice el operador ternario para comparar estas dos variables como en el primer método. Compare las variables con el operador de comparación doble igual y triple igual. Almacene los resultados en las variables $c y $d y use las funciones var_dump() para volcar estas variables.

La variable $c devuelve el valor falso y el valor $d devuelve el valor verdadero. Como el operador triple igual compara el tipo de operandos, es obvio que el tipo de 1 y true no coincide. Pero, el valor 1 es el valor de verdad, por lo que su valor es el mismo que el valor booleano true.

Código de ejemplo:

#php 7.x 
<?php
$a = 1; 
$b = true; 
$c = $a===$b ? true : false;
$d = $a==$b ? true : false;
var_dump($c);
var_dump($d);
?>

Producción :

bool(false) bool(true)

Compare un valor entero y un valor de cadena con el operador de comparación doble y triple igual

Podemos comparar los operandos directamente en la función var_dump() para ver el resultado de la comparación. Este método es el método abreviado de los métodos que utilizan los operadores ternarios. La siguiente ilustración compara un valor entero y un valor de cadena utilizando el operador de comparación triple igual y doble igual.

Por ejemplo, cree una variable $a y almacene el valor entero 5 en ella. Almacene un valor de cadena '5' en otra variable $b. Compare estas dos variables primero usando el operador de comparación triple igual y luego usando el operador doble igual. Envuelva estas comparaciones dentro de las funciones var_dump().

La primera comparación da como resultado un valor falso. La segunda comparación devuelve el valor de verdad. El tipo de las dos variables no coincide, por lo que da como resultado un valor falso. El valor de cadena 5 se convierte en un valor entero, y el valor de ambas variables será el mismo. Sin embargo, el tipo de variables no cambia.

Código de ejemplo:

#php 7.x 
<?php
$a = 5; 
$b = '5';
var_dump($a===$b);
var_dump($a==$b);
?>

Producción :

bool(false) bool(true)
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

Artículo relacionado - PHP Operator