Difference entre isset et if(isset())

Résolu
meluos -  
 meluos -
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   Statut Membre Dernière intervention   66
 
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 138 Date d'inscription   Statut Membre Dernière intervention   89
 
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
meluos
 
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 138 Date d'inscription   Statut Membre Dernière intervention   89
 
voila tu peut même aller un peut plus loin

if(isset($a))
{
     echo $a;
}
else
{
echo "n'existe pas ";
}
0
meluos
 
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   Statut Membre Dernière intervention   20
 
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
meluos
 
OK merci à tous
0