Работа с часовыми поясами

at0m1x

Новичок
На нашем сервере, в php.ini по умолчанию задана временная зона Europe/Moscow. Как в php преобразовывать МСК время, в Киевское время (Europe/Kiev), с учетом перехода на летнее время?

Пробовал делать так:
PHP:
date_default_timezone_set('Europe/Moscow');
$curDate = date('Y-m-d H:i:s');
echo $curDate . '<br>'; // MSK time

$date = new DateTime($curDate, new DateTimeZone('Europe/Kiev'));
echo $date->format('Y-m-d H:i:s'); // Kiev time
Результат выполнения:
2012-06-06 17:07:38
2012-06-06 17:07:38

Время одинаковое, а должно на час различатся.
 

ksnk

прохожий
Ибо написано: Возьми строку и считай, что сейчас время в Москве; выведи ее, считая, что вемя московское. Потом возьми строку (ту же ;) ) и считай, что сейчас время Кевское; выведи ее, считая, что время киевское.

PHP:
$date = new DateTime($curDate) ; $date->setTimezone(new DateTimeZone('Europe/Moscow'));
echo $date->format('Y-m-d H:i:s').'<br>'; // Moscow time

$date = new DateTime($curDate) ; $date->setTimezone( new DateTimeZone('Europe/Kiev'));
echo $date->format('Y-m-d H:i:s'); // Kiev time
Так правильнее
 
Сверху