Bonjour,
Je voulais savoir quelle est la bonne syntaxe :
if(isset($var) == 'valeur')
{
#code
}
ou
if(isset($var) AND $var == 'valeur')
{
#code
}
Car les deux semble fonctionner
Merci de vos réponses
Bonjour,
Ca dépend de ce que tu cherches à faire mais si comme j'imagine tu cherches à savoir si ta variable est bien définie et si elle correspond à une valeur précise c'est le 2ème choix qui est correct.
Le premier va comparer un booléen (vrai ou faux selon si ta variable est définie ou non) à ta valeur...
Très bien, merci pour cette précisionn.
Je suis en train de passer de PHP 7 à PHP 8 (il serait temps...) et lorsque je ne mets pas isset(), j'ai un Warning: Undefined.
J'imagine donc que je dois à chaque fois soit déclarer la variable null ou alors préciser à chaque fois
Par exemple voici mon ancien code :
if($_POST['foo'] == 'bar') {
//...
}
Les trois differentes manières qui suivent sont elles toute bonnes ?
$var = null;
$var = $_POST['foo'];
if($var === 'bar'){
//...
}
if(isset($_POST['foo'])) $var = $_POST['foo'];
else $var = null;
if($var === 'bar'){
//...
}
if(isset($_POST['foo']) AND $_POST['foo'] === 'bar'){
//...
}
Tes propositions sont correctes sauf la première :
$var = null;
$var = $_POST['foo'];
if($var === 'bar'){
//...
}
Ici ta variable, même si déclarée null au début, est ensuite réaffectée et peut devenir undefined donc c'est à éviter.