Question

phpinfo () montre notre système à l'aide "" Olson » Fuseau horaire Database version 2010.3" . I pense qui est maintenant à jour, mais ne peut pas trouver un emplacement d'autorité qui peut le confirmer.

(a) Puis-je mettre à jour les informations de PHP pour les fuseaux horaires dans son ensemble? (B) Si oui, comment puis-je mettre à jour cela? J'ai vu les instructions http://www.electrictoolbox.com/correct-php-timezone/ où il est dit que, après avoir installé le module approprié, il dit que je dois:

You should add "extension=timezonedb.so" to php.ini

Avons-nous besoin de le faire? PHP ne doit pas être automatiquement en utilisant le fichier correct?

Pas de solution correcte

Autres conseils

pour autant que je sais que la DB Timezone (TDB) est distribué dans PHP lui-même. En raison de ce que le fuseau horaire DB devient obsolète après un certain temps et vous devez soit mettre à jour PHP ou le TDB afin de refléter les changements dans TDB.

Il y a une extension PECL qui libère de nouveaux paquets TDB que vous pouvez télécharger et installer et de les utiliser dans vos anciennes installations PHP.

Je ne suis pas au courant qu'il ya un moyen de mise à jour TDB directement en PHP. L'extension PECL a été créé pour cibler cette question.

Il vaut mieux que de mettre à jour votre version de PHP (spécialement si vous êtes désireux de le mettre à jour sur une machine Windows, sinon vous devez compiler l'extension vous-même) car pour autant que je me souviens de l'extension est pas Windows Ready seulement unix / linux -. donc, si vous voulez le faire sur les fenêtres que vous devrez compiler vous-même en utilisant le compilateur VC6 OU VC9)

Donc, si vous pouvez mettre à jour votre version de PHP qui serait la solution la plus rapide (il était atleast pour moi), ofcourse PHP ne peut pas avoir les dernières infos fuseau horaire db mais je dû résoudre un problème avec le fuseau horaire db et il était fixé dans la version ultérieure de PHP que j'avais. Si vous le faites pour unix / linux vous pourriez aussi bien essayer l'extension PECL je pense que cela pourrait être plus facile et plus rapide pour vous, alors.

L'extension PECL est littéralement le fuseau horaire DB. Chaque fois qu'une nouvelle version de la base de données est libéré de , l'extension est recompilé avec le fuseau horaire mis à jour DB.

Alors, vous auriez fait remplacer l'ancienne extension avec nouvelle version recompilée et redémarrez votre serveur Web; en supposant que PHP est utilisé en tant que module.

Pour faire une mise à jour de fuseau horaire complet (Nous avons eu des problèmes avec fuseau horaire incorrect Russie / Moscou):

#for OS - CentOS and MySQL
yum update tzdata
mysql_tzinfo_to_sql /usr/share/zoneinfo
#for PHP
pecl upgrade timezonedb
pecl upgrade intl

#dependencies you may need for the above:
yum install gcc 
yum install gcc-c++
yum install libicu-devel
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top