Maison >développement back-end >tutoriel php >Pourquoi mon code PHP génère-t-il une erreur « Erreur fatale : l'expression constante contient des opérations invalides » lors de l'initialisation d'une variable statique ?
Erreur fatale PHP : opérations invalides d'expression constante
Lorsque vous rencontrez l'erreur "Erreur fatale : l'expression constante contient des opérations non valides", elle se produit lorsque une variable statique PHP tente de s'initialiser avec une valeur non littérale ou non constante avant PHP 5.6.
Dans votre cas, le ligne en question :
protected static $dbname = 'mydb_'.$appdata['id'];
tente d'initialiser la propriété statique $dbname avec la valeur de la variable dynamique $appdata['id']. Cependant, les propriétés statiques nécessitent une initialisation avec des constantes ou des littéraux avant PHP 5.6.
La raison derrière cela est que les déclarations statiques sont évaluées au moment de la compilation, ce qui signifie que l'interpréteur PHP ne peut pas accéder aux variables dynamiques qui ne sont connues qu'au moment de l'exécution. . Pour résoudre cette erreur, vous pouvez :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!