Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2937 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  operateurs logiques

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

operateurs logiques

n°1663167
wrksx
Posté le 26-12-2007 à 21:15:53  profilanswer
 

Je désire créer un script qui verifie si deux valeur sont "false"
 
est-ce que ce code:  
==php==
 
if ( ($a == false) OR ($b == false) ) {
       exit('bye');
       }
 
==fin==
 
equivaut a celui-ci ?
 
==php==
if ($a == false) {
        exit('bye');
        } else {
 
        if ($b == false) {
                exit ('bye');
                }
        }
==fin==
 
Et peut on ecrire:
 
==php==
if ( !$a OR !$b ) {
        exit('bye');
        }
==fin==
 
ou bien n'ai-je pas encor compris ?
merci d'avance...

mood
Publicité
Posté le 26-12-2007 à 21:15:53  profilanswer
 

n°1663199
yellu
Posté le 26-12-2007 à 22:22:17  profilanswer
 

Attention à bien prendre en compte que la valeur 0 peut être interprétée comme false.
Pour vérifier que $a est false et qu'il est booléen utilise le triple égal ( === )

n°1663207
wrksx
Posté le 26-12-2007 à 22:28:53  profilanswer
 

et concernant cette formulation ? est ce correct ?
 
if ( !$a OR !$b ) {
        exit('bye');
        }  

n°1663235
jagstang
Pa Capona ಠ_ಠ
Posté le 26-12-2007 à 23:54:17  profilanswer
 

OR --> ||


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1663250
leflos5
On est ou on est pas :)
Posté le 27-12-2007 à 01:59:00  profilanswer
 

Oui sans compter tout ce qui peut être à peut près équivalent à false en php... ET tout ce qui est à peut près équivalent à true...
 

Code :
  1. if( $a===false ||  $b===false)

n°1663369
Baldurien
Mieux vaut mourir que mourir!
Posté le 27-12-2007 à 14:23:48  profilanswer
 

Juste un truc: or != ||. Ca fait la même chose, mais pas au même niveau. La précédence de or n'est pas la même que ||.
 
Si tu fais, la lecture ne sera pas la même :
 
$a = $x or $y; -> $a = ($a or $b);
$a = $x || $y; -> ($a = $x) || $y;
 
Dans la plupart des cas, c'est pareil car tu as des opérateurs de plus hautes précédences (==, &&, etc) mais dans ce cas là non.
 


---------------
La Bibliothèque de Neverwinter Nights

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  operateurs logiques

 

Sujets relatifs
Classes et opérateurs, code incompréhensible...[Reflection] Operateurs
[Compilation] Priorité des opérateursproblème de tests logiques
Préfixes des trois opérateurs de portable[Compréhension] opérateurs new et delete[]
Analyse de "l'efficacité" d'opérateurs de traitement d'imageopérateurs d'incrémentation : ++Taz vs. Taz++
surcharge d'opérateurs ?Opérateurs et héritage
Plus de sujets relatifs à : operateurs logiques


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)