Avant de plonger dans la façon de résoudre l'erreur "Essayez de référencer une erreur constante", nous devons comprendre la définition d'une constante. Les constantes sont un type spécial de variable dans un programme, et leurs valeurs restent inchangées lors de l'exécution du programme. Les constantes peuvent être définies via la fonction Define () intégrée de PHP, et la syntaxe de base est la suivante:
Lorsque le nom est le nom constant, la valeur est la valeur de la constante, et les contrôle insensibles à la casse la sensibilité de la caisse du nom constant, qui par défaut est fausse, indiquant la sensibilité de la caisse.
En PHP, si le programme accède à une constante ou à une variable non définie, une erreur de niveau E_NOTICE sera lancée. Les développeurs ferment généralement les rapports d'erreur E_NOTICE pour éviter les interruptions du programme, mais les erreurs imprévues peuvent être augmentées si une constante ou une variable non définie est en effet référencée dans le programme.
La raison principale de cette erreur est que les constantes non définies sont utilisées dans le programme. Deux situations communes comprennent:
Si une constante non définie est tentée dans le programme, PHP déclenchera une erreur "d'essayer de référencer une erreur constante". L'exemple de code suivant le démontre:
Dans cet exemple, $ a est une variable définie, et Undefined_Constant est une constante non définie. À l'heure actuelle, PHP traitera le nom constant en tant que chaîne et affectera sa valeur à la variable de résultat $ .
De plus, une erreur similaire se produira si le programme essaie de référencer la valeur d'une constante définie, mais la constante n'a pas été définie. Voici un exemple de code:
Si le nom constant constant n'est pas défini, PHP le traitera également en tant que chaîne et le affectera à la variable $ foo .
Pour éviter cette erreur, les développeurs doivent s'assurer que toutes les constantes et variables utilisées sont définies et valides lorsqu'elles sont transmises à la fonction. Voici quelques suggestions pour prévenir les erreurs:
Lorsqu'une erreur "Essayez de référence à une constante non définie" se produit, les développeurs peuvent résoudre le problème de la manière suivante:
Tout d'abord, vous devez vous assurer que le nom constant est correct dans le code et accorder une attention particulière aux problèmes de cas. Le nom constant de PHP est sensible à la casse, et si le cas est incohérent, PHP ne reconnaîtra pas la constante.
Deuxièmement, confirmez si la constante est déjà définie dans le code. Si non défini, le développeur doit utiliser la fonction Define () pour définir la constante.
Si vous ne savez pas si une constante est définie, vous pouvez utiliser les fonctions constant () et définies () pour vérifier l'état de définition de la constante:
Si le développeur ne veut pas ignorer l'erreur ou rencontre fréquemment des problèmes similaires, vous pouvez définir le niveau de rapport d'erreur de PHP sur E_ALL pour capturer toutes les erreurs E_NOTICE et les gérer.
Pendant le développement de PHP, il est important d'éviter de "essayer de référencer les erreurs" des constantes non définies. Les développeurs doivent s'assurer que les constantes et les variables sont correctement définies et que les constantes et variables transmises à la fonction ont des valeurs valides. Si vous rencontrez cette erreur, vous pouvez dépanner et la résoudre en fonction des méthodes ci-dessus.