par

J'exécute un script PHP et continue de recevoir des erreurs du type :

Notice: Undefined variable: ma_variable in chemin_accès/fichier.php on line XX

Quelles méthodes faut-il utiliser pour résoudre les erreurs PHP Notice: Undefined variable ?

1 Réponse

+1 validé
par

Bien que PHP ne nécessite pas de déclaration de variable, il est recommandé de le faire afin d'éviter certaines failles de sécurité, ou des bogues qui empêcheraient d'attribuer une valeur à une variable.

Ce que PHP fait dans le cas de variables non déclarées, c’est d'envoyer une erreur de très bas niveau, E_NOTICE, qui d'ailleurs n’est même pas signalée par défaut, mais que le manuel recommande d’autoriser pendant le développement.

La solution la plus recommandée pour résoudre l'erreur PHP Notice: Undefined variable est de déclarer vos variables.

  • Utilisez des "" (guillemets) quand vous voulez ajouter du contenu alphanumérique, ultérieurement à la variable.

exemple

$variable = ""; 
  • Utilisez un 0 (zéro) quand vous voulez ajouter du contenu numérique, ultérieurement à la variable.

exemple

$variable = 0;

Lorsque vous faites appel à une variable non définie, utilisez isset() ou !empty() avant de l'utiliser :

exemple isset()

$variable = isset($_POST['valeur']) ? $_POST['valeur'] : '';

exemple empty()

$variable = !empty($_POST['valeur']) ? $_POST['valeur'] : '';

Avec PHP7 vous devriez utiliser l'opérateur Null coalescent, vous n'aurez alors plus vraiment besoin de déclarer vos variables :

$variable = $_POST['valeur'] ?? '';

Ce qui fonctionne également pour résoudre l'erreur PHP Notice: Undefined variable, mais qui n'est pas recommandé :

  • Désactiver E_NOTICE avec error_reporting(~E_NOTICE).
  • Supprimer l'erreur avec l'opérateur @ devant la variable.

Tendances

Questions liées

1 réponse
posée par anonyme 26-Juillet-2019
1 réponse
1 réponse
1 réponse

Merci pour votre visite sur 1FORMATIK.com

Un petit clic sur la pub est toujours apprécié, c'est elle qui finance le site

Bon surf

...