Расчёт времени с поправкой на timezone.

micolo

Новичок
Расчёт времени с поправкой на timezone.

Доброго времени суток!

Возник следующий вопрос! Когда я делаю :

PHP:
date_default_timezone_set('Europe/Moscow');
print date("Y m d H:i:s");
Время отображается как надо, с поправкой на временную зону и на переход на летнее и зимнее время.
Но мне нужно перевести не текущее время а скажем время из базы с учетом вышестоящих настроек. Я делаю примерно тоже.
PHP:
date_default_timezone_set('Europe/Moscow');
$date = date("Y m d H:i:s", mktime(23,32,10,07,18,2009));
print $date;
Время не меняется с учётом временной зоны. Поиск в гугле ничего не даёт.
Подскажите как решить мою проблему.
Спасибо!
 

DiMA

php.spb.ru
Команда форума
выводи время через яву, чтобы она добавила временную зону

тогда один и тот же $date все будут видеть по своему правильно
 

micolo

Новичок
Мне это не совсем удобно потому что эти данные нужны в отчёте которые выводится через XSLT. Неужели через PHP это никак невозможно сделать?
 

DiMA

php.spb.ru
Команда форума
на пхп можно все, он не отличается от других языков
 

micolo

Новичок
можно конкретно по моего случаю показать как это сделать?
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
micolo
можно дать тебе ссылку на ман, а сделать за тебя нельзя - это твоя работа
 

Активист

Активист
Команда форума
DateTime класс должен поддерживать [m]datetime[/m]

-~{}~ 19.07.09 22:01:

PHP:
<?php
$datetime = new DateTime('2008-08-03 14:52:10');
$datezone = new DateTimeZone("Asia/Irkutsk");

$datetime->setTimezone($datezone);
echo $datetime->format("d/m/Y H:i:s");
// 03/08/2008 23:52:10

$datetime = new DateTime();

$datetime->setTimezone(new DateTimeZone(date_default_timezone_get()));
echo $datetime->format("d/m/Y H:i:s");
// 19/07/2009 13:04:00

$datetime->setTimezone(new DateTimeZone("Europe/Moscow"));
echo $datetime->format("d/m/Y H:i:s");
// 19/07/2009 17:05:39

$datetime->setTimezone(new DateTimeZone("Asia/Irkutsk"));
echo $datetime->format("d/m/Y H:i:s");
// 19/07/2009 22:07:11

?>
 

micolo

Новичок
Автор оригинала: grigori
micolo
можно дать тебе ссылку на ман, а сделать за тебя нельзя - это твоя работа
PHPClub для меня, так сказать последняя инстанция - если я действительно не могу найти решение проблемы - я иду сюда и прошу помощи и не стыжусь этого - для чего ещё нужен этот форум как не для обмена опытом - если не можешь помочь - лучше вообще ничего не писать, сойдёшь за умного.

Активист
Большое спасибо за помощь!
 
Сверху