Utilité de isset() et de !empty() pour tester une égalité

Fermé
Mathieu - Modifié le 22 déc. 2020 à 22:52
jordane45 Messages postés 38273 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 novembre 2024 - 22 déc. 2020 à 23:38
Bonjour, je voudrais savoir si il est néccessaire d'utiliser isset() et !empty() dans cet exemple:

 

if(isset($_GET['id'] AND !empty($_GET['id']) AND $_GET['id'] == 1) {

myFunction() ;
}


Car si la variable $_GET['id'] vaut 1, logiquement, elle existe et elle pas vide.

Merci d'avance pour votre réponse.
A voir également:

1 réponse

jordane45 Messages postés 38273 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 novembre 2024 4 695
22 déc. 2020 à 23:38
Bonjour,

!empty fait déjà un isset.
Donc les deux ensembles ne sont pas nécessaires.

Moi ce que je t'invite à faire, c'est de récupérer proprement la variable AVANT de l'utiliser
$id = !empty($_GET['id']) ? intval($_GET['id']) : 0;
if($id==1){
  myFunction() ;
}


Un peu de lecture au passage :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

Et pour tes prochains messages, pense à indiquer le langage dans les balises de code afin d'avoir la coloration syntaxique, la numérotation des lignes...
Explications à lire entièrement disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
1