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 :

différence entre "@" et isset(); [Fait]


Sujet :

Langage PHP

  1. #1
    Membre habitué Avatar de kodokan
    Profil pro
    Lycéen
    Inscrit en
    Avril 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2006
    Messages : 127
    Points : 170
    Points
    170
    Par défaut différence entre "@" et isset();
    Bonjour

    a votre avis que vaut-il mieux écrire :

    Ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if(@$_POST)
    {
    // bloc d'instructions 
    }
    ou cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if(isset($_POST))
    {
    // bloc d'instructions 
    }
    Moi j'obtient le meme résultat meme si le isset() me paraît plus correct

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 79
    Points : 72
    Points
    72
    Par défaut
    Salut,

    @ désactive les messages d'erreurs, donc je suis plus partant pour la fonction isset dans le cas que tu décris.

  3. #3
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    bonjour,

    le @ sert a echapper le message d'erreur. Si tu enleve ton @, tu vas voir un beau message d'erreur: Notice undefine..... si ta variable n'est pas affectee.
    Alors que isset teste si la variable est affectee et c'est beaucoup plus propre

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    L'@ n'est pas très poli... Il contraint PHP à se taire alors qu'il meurt d'envie de te dire quelque chose. En contrepartie, isset() et empty() font un test d'existence, ce qui est bien mieux élevé.

Discussions similaires

  1. Différence entre %STR et %QUOTE
    Par fafabzh6 dans le forum Macro
    Réponses: 10
    Dernier message: 14/03/2011, 17h43
  2. Chaînes entre double quotes
    Par ybruant dans le forum Langage
    Réponses: 6
    Dernier message: 25/03/2008, 14h46
  3. différence entre isset et !isset
    Par vanou dans le forum Langage
    Réponses: 3
    Dernier message: 27/02/2007, 16h19
  4. Réponses: 3
    Dernier message: 20/01/2007, 20h36
  5. différence entre !isset et empty.
    Par sam01 dans le forum Langage
    Réponses: 3
    Dernier message: 20/10/2006, 16h35

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