Je me demande pourquoi est-ce que mon initialisation variable statique ne fonctionne pas avec la déclaration suivante:"Erreur fatale PHP: l'expression constante contient des opérations invalides", lors de l'initialisation d'une ligne statique?
function validate()
{
static $timezones = DateTimeZone::listIdentifiers(); // Error here
...
}
La ligne avec static ...
génère l'erreur:
PHP Fatal error: Constant expression contains invalid operations
Si je fais ce qui suit, bien que , il fonctionne comme prévu:
function validate()
{
static $timezones = null;
if(!isset($timezones))
{
$timezones = DateTimeZone::listIdentifiers();
}
...
}
Donc, j'ai un moyen de contourner le problème, mais je me demande pourquoi est-ce que le fi Première méthode échoue?
Veuillez arrêter le spam. Votre message ne peut pas être C++ et PHP simultanément, et ce n'est absolument pas le code C++ que vous avez posté. Vous n'êtes pas nouveau ici; vous savez comment fonctionnent les tags. Arrêtez de les ajouter au hasard. –
Pourquoi cela échoue expliqué dans le message d'erreur. – zerkms
@KenWhite Ah ... Désolé, c'était un tag suggéré et puisque je fais beaucoup de C++ aussi ... Merci pour le montage. –