IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comment lire cette syntaxe ?


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 34
    Par défaut Comment lire cette syntaxe ?
    Bonjour,

    Je reprend un code, et je bloque sur cette syntaxe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ( !$this->is_empty_status() ) || $status = 'invalid';
    Comment la lire svp ?

    Merci !

  2. #2
    Rédacteur
    Avatar de Halleck
    Homme Profil pro
    Consultant PHP
    Inscrit en
    Mars 2003
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Consultant PHP

    Informations forums :
    Inscription : Mars 2003
    Messages : 597
    Par défaut
    Ici c'est une manière de lancer une instruction sous condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    false || die('ok'); // va effectuer le die
    true || die('ok'); // il ne se passe rien
    A ne pas confondre avec le || de comparaison :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $toto = true || false; // true
    $toto = true || true; // true
    $toto = false || true; // true
    $toto = false || false; // false


    j'y pense, il est également possible de lancer une commande

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 34
    Par défaut
    Ah je ne la connaissais pas ! Merci beaucoup Halleck !

    Donc si j'ai bien compris, ma variable $status aura pour valeur 'invalid' uniquement si la fonction is_empty_status() renvoie FALSE.

    Ceci dit je ne vois pas l'utilité par rapport à la syntaxe classique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( !$this->is_empty_status() ) $status = 'invalid';
    Même pas un petit gain de place dans le code...

  4. #4
    Rédacteur
    Avatar de Halleck
    Homme Profil pro
    Consultant PHP
    Inscrit en
    Mars 2003
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Consultant PHP

    Informations forums :
    Inscription : Mars 2003
    Messages : 597
    Par défaut
    Effectivement, l'intérêt peut être limité, surtout au niveau de la clarté du code.

    Ceci dit, il est fréquent de voir cette syntaxe pour des définitions de constantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    defined('TOTO') || define('TOTO', value');

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2010
    Messages : 88
    Par défaut
    Pour moi, c'est le meme || que celui de comparaison sauf qu'on utilise la faculté de php à ne pas évaluer le membre de droite d'une condition OU lorsqu'on a un false dès le membre de gauche (optimisation d'exécution)

    A mes yeux, c'est un détournement bien pratique de cette optimisation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment lire cette ligne ?
    Par Mister Paul dans le forum Langage
    Réponses: 2
    Dernier message: 21/08/2010, 15h47
  2. comment lire cette méthode
    Par bandit_debutant dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 16/06/2008, 13h40
  3. [Debutant] Comment lire la taille d'un fichier binaire ?
    Par Invité dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 18/12/2003, 19h20
  4. Réponses: 2
    Dernier message: 06/12/2002, 07h50
  5. Réponses: 5
    Dernier message: 20/08/2002, 18h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo