Position actuelle: Accueil> Derniers articles> Que dois-je faire si la fonction Timezone_version_get n'est pas disponible? Apprenez-vous s'il est désactivé et comment le résoudre

Que dois-je faire si la fonction Timezone_version_get n'est pas disponible? Apprenez-vous s'il est désactivé et comment le résoudre

gitbox 2025-08-19

1. La fonction de la fonction Timezone_version_get

La fonction Timezone_version_get est utilisée pour obtenir la version de la base de données du texone. Il renvoie généralement une chaîne qui représente le numéro de version de la base de données actuelle du fuseau horaire dans le système. Cette fonction n'est prise en charge que par PHP 5.5.0 et supérieur, donc si votre version PHP est inférieure, vous ne pourrez peut-être pas utiliser cette fonction.

Exemple de code:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">timezone_version_get</span></span><span>();
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Si l'environnement PHP prend en charge cette fonction, il renverra une chaîne similaire à 2019.3 , indiquant la version actuelle de la base de données du fuseau horaire.

2. Comment déterminer si Timezone_version_get est désactivé

Si vous rencontrez le problème de la "fonction indisponible" lors de l'exécution de la fonction Timezone_version_get dans PHP, vous devez d'abord juger les points suivants:

1. Vérifiez la version PHP

La fonction timezone_version_get nécessite que la version PHP soit au moins 5.5.0. Si vous utilisez une version PHP inférieure à cette version, le système ne prend naturellement pas en charge cette fonction. Vous pouvez afficher la version PHP actuelle via le code suivant:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">'PHP version: '</span></span><span> . </span><span><span class="hljs-title function_ invoke__">phpversion</span></span><span>();
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Si la version PHP est inférieure à 5.5.0, il est recommandé de mettre à niveau PHP vers une version qui prend en charge cette fonction.

2. Vérifiez la configuration php.ini

Parfois, la fonction Timezone_version_get peut être désactivée, ce qui est généralement obtenu en modifiant le fichier php.ini . Vous pouvez vérifier l'élément de configuration Disabled_Functions pour voir si la fonction y est répertoriée. Ouvrez le fichier de configuration PHP.ini et recherchez les éléments de configuration suivants:

 <span><span><span class="hljs-attr">disable_functions</span></span><span> = </span><span><span class="hljs-string">"timezone_version_get"</span></span><span>
</span></span>

Si l'élément de configuration contient du temps de temps_version_get , vous devez supprimer le nom de la fonction ou commenter la ligne et redémarrer votre service PHP.

3. Vérifiez si l'extension du fuseau horaire est activée

La fonction timezone_version_get dépend de l'extension de date , et si l'extension n'est pas activée, la fonction ne peut pas être utilisée. Vous pouvez vérifier si l'extension est activée en suivant le code:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">extension_loaded</span></span><span>(</span><span><span class="hljs-string">'date'</span></span><span>)) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"date Extension activée\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"date Extension non activée\n"</span></span><span>;
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Si la sortie indique que "l'extension de date n'est pas activée", vous devez activer l'extension dans php.ini . Trouvez les éléments de configuration suivants:

 <span><span><span class="hljs-attr">extension</span></span><span>=date.so
</span></span>

Si la ligne est commentée (avec un point-virgule à l'avant ; ), supprimez le commentaire et redémarrez PHP.

3. Solution

Si vous confirmez que la fonction timezone_version_get est désactivée ou indisponible, voici quelques solutions courantes:

1. Améliorer la version PHP

Comme mentionné précédemment, la fonction timezone_version_get nécessite une version PHP d'au moins 5.5.0. Si vous utilisez actuellement une version PHP inférieure, il est recommandé de passer à PHP 7.x ou ultérieure pour assurer la compatibilité et les performances.

2. Modifier la configuration php.ini

Vérifiez la configuration DISABLE_FONCTIONS dans php.ini pour vous assurer que Timezone_version_get n'est pas désactivé. Vous pouvez modifier le fichier php.ini , supprimer la ligne de configuration qui désactive la fonction et redémarrer le service PHP.

3. Activer l'extension du fuseau horaire

Assurez-vous que l'extension de date est activée, ce qui est essentiel à l'utilisation des fonctions liées au fuseau horaire. Si vous n'êtes pas activé, modifiez le fichier php.ini , activez l'extension de date et redémarrez PHP.

4. Utiliser des alternatives

Si votre version PHP est trop faible et ne peut pas être mise à niveau, vous pouvez utiliser d'autres méthodes pour obtenir des informations de fuseau horaire, telles que l'utilisation de la classe DateTimeZone pour obtenir le fuseau horaire actuel:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$timezone</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">DateTimeZone</span></span><span>(</span><span><span class="hljs-title function_ invoke__">date_default_timezone_get</span></span><span>());
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$timezone</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">getVersion</span></span><span>();
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Bien que cette méthode ne puisse pas obtenir le numéro de version de la base de données du fuseau horaire, il peut fournir quelques détails sur le fuseau horaire actuel, qui convient à certains scénarios.

4. Résumé

La fonction timezone_version_get est un outil utile pour obtenir la version actuelle de la base de données duzon. Si vous rencontrez une situation où la fonction n'est pas disponible, vérifiez d'abord si la version PHP, la configuration PHP.ini et l'extension du fuseau horaire sont correctement activées. La mise à niveau de la version PHP, l'ajustement de la configuration PHP.ini , ou l'activation des extensions connexes résolvent généralement la plupart des problèmes. Si aucune de ces méthodes n'est possible, envisagez d'utiliser une alternative pour obtenir des informations de fuseau horaire.