Страница 1 из 1
PHP Timezone
Добавлено: 22 фев 2012, 09:58
nerevar1n
Привет, Максим.
Попробуй у себя попробовать выполнить следующий код:
date_default_timezone_set('Asia/Tbilisi');
print(date("Y-m-d H:i:s") . "<br>");
date_default_timezone_set('Europe/Moscow');
print(date("Y-m-d H:i:s"));
Столкнулся на работе с проблемой, что время часовом поясе Eupore/Moscow не совпадает с реальным.
Люди подсказывают, что это зависит от того, с какими таймзонами был скомпилирован php.
О себе: WinXP SP3, стоит патч
http://support.microsoft.com/kb/2570791/en-us,
PHP 5.2.17 из коробки с параметром date.timezone = "Europe/Moscow" в конфиге.
Дома еще протестирую на WIn7
Re: PHP Timezone
Добавлено: 22 фев 2012, 11:18
Максим
Да, PHP компилируется со своей Timezone Database, и естественно что разработчики PHP врятли обновляют сборку PHP 5.2.17 под windows всякий раз когда какому-либо "главному" вздумается поменять в стране время.
Сборка была компилирована 06 January 2011, а на другое время Россия перешла лишь 30 октября.
Это на Linux легко взять и обновить базу временных зон и потом пересобрать PHP. В Windows тут таких возможностей нет. Разве что если вы не гуру Visual Studio 2008.
Рад бы помочь, но нечем. Только если брать левую перекомпилированную сборку под windows где-то. Но я не знаю какие сайты такой php выкладывают и можно ли им доверять. Найдёте - подскажите.
Как костыль - используйте время Тбилиси
Это еще только начало. В России опять вернуть старое время собираются. Вот смеху то будет, когда откомпилируют с обновленной базой, а Россия опять время поменяет.
Re: PHP Timezone
Добавлено: 22 фев 2012, 11:57
xoy
pecl install timezonedb
Re: PHP Timezone
Добавлено: 22 фев 2012, 12:12
nerevar1n
xoy писал(а):pecl install timezonedb
Да кстати, вот тут сорцы
http://pecl.php.net/package/timezonedb которые можно собрать в dll и подключить в php.
This extension is a drop-in replacement for the builtin timezone database that
comes with PHP. You should only install this extension in case you need to get
a later version of the timezone database than the one that ships with PHP.
Re: PHP Timezone
Добавлено: 22 фев 2012, 12:33
Максим
xoy писал(а):pecl install timezonedb
На Windows такое не прокатит. Даже если пользователь смышлёный, установит PEAR и выполнит вашу команду + еще несколько команд по ходу установки, то в конце он упрётся в
ERROR: The DSP timezonedb.dsp does not exist.
Если знаете как это побороть, подскажите. Да и в любом случае, это ведь будет не портативный вариант.
Re: PHP Timezone
Добавлено: 22 фев 2012, 12:36
Максим
nerevar1n, если найдёте DLL которая будет на любой винде работать, подключим в проект.
Re: PHP Timezone
Добавлено: 22 фев 2012, 16:45
Максим
В продолжение темы: php_timezonedb.dll нашел, но самый свежий что есть в интернете - 2008 года. Сайт pecl4win.php.net мертвый, на pecl.php.net тоже ничего.