Desigualdad por valor y tipo en PHP
Además del operador != también existe
el operador !==, que tiene en cuenta el tipo al
comparar. Analicemos las diferencias entre
ellos con ejemplos.
Supongamos que con el operador != se comparan
dos números 3. Este operador compara
los valores para ver si NO son iguales. Como
nuestros valores sí son iguales, en la pantalla
se mostrará '-':
<?php
if (3 != 3) {
echo '+++';
} else {
echo '---'; // esto se ejecutará, ya que los valores son iguales
}
?>
Supongamos ahora que uno de nuestros valores esté
entre comillas. En este caso, el operador !=
seguirá considerándolos iguales (ya que coincide
el valor, y el tipo no es importante para este operador)
y nuevamente mostrará '-':
<?php
if ('3' != 3) {
echo '+++';
} else {
echo '---'; // esto se ejecutará, ya que los valores son iguales
}
?>
Comparemos ahora dos números 3
con el operador !==. Él también
los considerará iguales y mostrará '-':
<?php
if (3 !== 3) {
echo '+++';
} else {
echo '---'; // esto se ejecutará, ya que los valores son iguales
}
?>
Pero si ahora ponemos uno de los tres entre comillas,
el operador !== considerará nuestros tres
desiguales, porque, aunque sus valores coincidan,
tienen tipos diferentes:
<?php
if ('3' !== 3) {
echo '+++'; // esto se ejecutará, ya que los valores NO son iguales
} else {
echo '---';
}
?>
Sin ejecutar el código, determine qué se mostrará en la pantalla:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 != $test2) {
echo '+++';
} else {
echo '---';
}
?>
Sin ejecutar el código, determine qué se mostrará en la pantalla:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 !== $test2) {
echo '+++';
} else {
echo '---';
}
?>
Sin ejecutar el código, determine qué se mostrará en la pantalla:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 != $test2) {
echo '+++';
} else {
echo '---';
}
?>
Sin ejecutar el código, determine qué se mostrará en la pantalla:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 !== $test2) {
echo '+++';
} else {
echo '---';
}
?>
Sin ejecutar el código, determine qué se mostrará en la pantalla:
<?php
$test1 = 3;
$test2 = 2;
if ($test1 !== $test2) {
echo '+++';
} else {
echo '---';
}
?>