Forum und email

Les opérateurs logiques

Les opérateurs logiques
Exemple Nom Résultat
$a and $b ET (And) Vrai si $a ET $b sont vrais.
$a or $b OU (Or) Vrai si $a OU $b est vrai
$a xor $b XOR (Xor) Vrai si $a OU $b est vrai, mais pas les deux en même temps.
! $a NON (Not) Vrai si $a est faux.
$a && $b ET (And) Vrai si $a ET $b sont vrais.
$a || $b OU (Or) Vrai si $a OU $b est vrai.

La raison pour laquelle il existe deux types de "ET" et de "OU" est qu'ils ont des priorités différentes. Voir le paragraphe précédence d'opérateurs.

Example#1 Illustration des opérateurs logiques

<?php

// foo() ne sera jamais appeler car ces opérateurs s'annulent
$a = (false && foo());
$b = (true  || foo());
$c = (false and foo());
$d = (true  or  foo());

// "||" a un précédence supérieure que "or"
$e false || true// $e se vera assigner à (false || true), ce qui est true
$f false or true// $f se vera assigner à false
var_dump($e$f);

// "&&" a une précédence supérieure à "and"
$g true && false// $g se vera assigner à (true && false), ce qui est false
$h true and false// $h se vera assigner à true
var_dump($g$h);

L'exemple ci-dessus va afficher quelque chose de similaire à :

bool(true)
bool(false)
bool(false)
bool(true)