Difference entre isset et if(isset())

Résolu/Fermé
meluos - 9 févr. 2014 à 19:51
 meluos - 9 févr. 2014 à 20:53
Bonjour,

je voudrais savoir quel difference il y a entre

if(isset($a))
{
     echo $a;
}


et

echo isset($a);


Merci...

5 réponses

Stanislas Poisson Messages postés 424 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 22 mai 2018 66
9 févr. 2014 à 19:56
Bonsoir,
Le premier effectue un test isset (qui retourne oui ou non en booleen (true/false)) sur la présence de la variable $a.
Si isset retourne true, alors le contenu du if est executer et le echo affiche le contenu de la variable $a

Le deuxieme, vas afficher le resultat du isset donc tu verra s'afficher 1 (correspondant a true) si la variable existe et 0 si elle n'existe pas.
0
Javelboy Messages postés 137 Date d'inscription vendredi 20 décembre 2013 Statut Membre Dernière intervention 19 juin 2015 86
9 févr. 2014 à 19:58
isset -- Détermine si une variable est définie et est différente de NULL.
echo = afficher le contenue de la variable
et if = si c'est donc une condition.
Donc :

if(isset($a))
{
     echo $a;
}

Veut dire si $a est différente de NULL afficher $a.

echo isset($a);

Afficher $a et isset va retourné FALSE comme valeur.

Alors qu'avec if il ne retournera rien vu qu'il n'exécutera pas echo =).
0
d'accord donc pour afficher la valeur de $a tout en testant son existance, je suis obligé de faire:

if(isset($a))
{
     echo $a;
}
0
Javelboy Messages postés 137 Date d'inscription vendredi 20 décembre 2013 Statut Membre Dernière intervention 19 juin 2015 86
9 févr. 2014 à 20:12
voila tu peut même aller un peut plus loin

if(isset($a))
{
     echo $a;
}
else
{
echo "n'existe pas ";
}
0
hum,
je viens de voir que ça fonctionne aussi:

echo isset($a) ? $a:5;


sauf que si $a n'existe pas on lui colle la valeur 5. Ce qui revient à ecrire:

 if(isset($a))
{
     echo $a;
}
else
{
     $a = 5;
     echo $a;
}


Sauf que c'est plus court.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BlackYoup Messages postés 181 Date d'inscription mardi 4 décembre 2012 Statut Membre Dernière intervention 10 juin 2014 20
9 févr. 2014 à 20:19
C'est ce qu'on appelle des opérateurs ternaires : https://www.php.net/manual/fr/language.operators.comparison.php

Mais attention à ne pas utiliser ces opérateurs n'importe ou, la lisibilité du code peut être atterrée ;)
0
OK merci à tous
0