SainT90 el uso de dos signos, == o !=, solo compara valores, el uso de tres signos, === o !==, tambien compara tipo, de forma que:
Código PHP:
Ver original// strpos() puede devolver cero si el texto buscado inicia en el primer caracter de la cadena
// Y devuelve falso si no se encontro el texto
if(0 == false) // Esto devuelve verdadero
if(0 === false) // Esto devuelve falso
if(1 != true) // Esto devuelve falso
if(1 !== true) // Esto devuelve verdadero
Con doble signo, si comparas entre un valor no definido (null), cadena vacia, cero y false, todas resultan ser iguales, pero si comparas con triple signo no.
Algunos programadores usan asignaciones y comparaciones que no son adecuadas como:
Código PHP:
Ver original// Si no existe el indice en $_POST, $variable sera nulo
$variable = $_POST['variable'];
if(!$variable) {
// Acciones
}
// Lo correcto seria inicializar $variable
$variable = (isset($_POST['variable'])) ?
$_POST['variable'] : '';
// Comparar de acuerdo al tipo de valor esperado con dos o tres signos
if($variable == '') {
// Acciones
}