Los operadores de Lógica nos permiten crear expresiones mas complejas para evaluar nuestras estructuras de control, permitiendonos enlazar varias operaciones de comparación con los diferentes operadores booleanos.
Estos operadores són mayoritariamente binarios, por lo que reciben 2 operandos, dependiendo de estos operandos (de valor 0 o 1) devolvera 0 (FALSE) o 1 (TRUE), los operadores lógicos binarios són:Y (&& o and) - Devuelve 1 si ambos operandos són 1 O (|| o or) - Devuelve 1 si algún operando es 1 O exclusivo (xor) - Devuelve 1 si solo 1 operando es 1 Veamos un ejemplo para ver como funcionan estos operadores:
000 001 002
|
<? echo ((1 == 1)&&(2 != 2)); // Devuelve 0 ?>
|
Existe otro operador lógico, en este caso unario, que es el operador No (!), este operador delante de un valor binario, devuelve el valor contrario (0 si es 1 y 1 si es 0):
000 001 002
|
<? echo !((1 == 1)&&(2 != 2)); // Devuelve 1 ?>
|
En esta expresion primero evaluaremos los parentesis, el primero vale 1 porque se cumple, el segundo 0 porque no se cumple, como usamos Y (&&) y no son 1 los dos vale 0, entonces lo negamos y vale 1 |