zona santiago horaria date_default_timezone_set chile cambiar buenos america aires php datetime timezone pecl

santiago - set timezone php



¿Cómo actualizar timezonedb en PHP(actualización de información de zonas horarias)? (4)

phpinfo () muestra que nuestro sistema está usando "Olson" Timezone Database Version 2010.3 ". Creo que ahora está desactualizado, pero no puedo encontrar una ubicación autorizada que pueda confirmarlo.

(a) ¿Puedo actualizar la información de las zonas horarias para PHP como un todo? (b) De ser así, ¿cómo actualizo esto? Vi las instrucciones en http://www.electrictoolbox.com/correct-php-timezone/ donde dice que, después de instalar el módulo apropiado, dice que tengo que:

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

¿Necesitamos hacer eso? ¿No debería PHP usar automáticamente el archivo correcto?


Hasta donde yo sé, el Timezone DB (TDB) se distribuye dentro de PHP. Debido a eso, la base de datos de la zona horaria se vuelve obsoleta después de un tiempo y debes actualizar PHP o la TDB para reflejar los cambios en TDB.

Hay una extensión PECL que lanza nuevos paquetes de TDB que puedes descargar e instalar y usarlos en tus antiguas instalaciones de PHP.

No tengo conocimiento de que haya una forma de actualizar TDB directamente en PHP. La extensión PECL fue creada para atacar este problema.


Es mejor actualizar su versión de PHP (especialmente si desea actualizarla en una máquina de Windows, de lo contrario debe compilar la extensión usted mismo) porque, por lo que recuerdo, la extensión no es Windows-Ready solamente unix / Linux, por lo que si desea hacerlo en Windows, deberá compilarlo usted mismo utilizando el compilador VC6 O VC9).

Por lo tanto, si puede actualizar su versión de PHP que sería la solución más rápida (al menos para mí), por supuesto, PHP puede no tener la última información de huso horario, pero tuve que resolver un problema con la zona horaria db y se solucionó en el versión posterior de PHP que tuve. Si lo haces para unix / linux, prueba la extensión PECL, creo que puede ser más fácil y más rápido para ti.


La extensión PECL es literalmente la base de datos de la zona horaria. Cada vez que se lanza una nueva versión del DB desde aquí , la extensión se vuelve a compilar con el DB de la zona horaria actualizada.

Por lo tanto, en realidad sobrescribiría la antigua extensión con la versión recientemente recompilada y reiniciaría su servidor web; asumiendo que PHP se está utilizando como un módulo.


Para hacer una actualización completa de la zona horaria (Tuvimos problemas con la zona horaria incorrecta de Rusia / Moscú):

#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