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

Mathieu -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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