php - datetimezone - PullRequest
       19

php - datetimezone

1 голос
/ 07 декабря 2010

Я использую функции с объектом datetime, для которых в качестве аргумента требуется объект datetimezone.Я вижу список часовых поясов здесь:

http://www.php.net/manual/en/class.datetimezone.php

, но нет таких вещей, как «est».Как я могу создать объект datetimezone из EST?

Ответы [ 4 ]

6 голосов
/ 07 декабря 2010
$tz = new DateTimeZone('EST');
2 голосов
/ 07 декабря 2010

В http://www.php.net/manual/en/timezones.php вы можете найти в разделе ДРУГОЕ EST там.

Чтобы создать одно использование date_default_timezone_set ('EST');

Чтобы убедиться, что он у вас есть, выполните echo date_default_timezone_get ();

1 голос
/ 20 марта 2011

Очень многословная петля. Функция конструкции для класса DateTime у меня не работает должным образом, но это работает.

$date = "2011/03/20";
$date = explode("/", $date);

$time = "07:16:17";
$time = explode(":", $time);

$tz_string = "America/Los_Angeles"; // Use one from list of TZ names http://us2.php.net/manual/en/timezones.php
$tz_object = new DateTimeZone($tz_string);

$datetime = new DateTime();
$datetime->setTimezone($tz_object);
$datetime->setDate($date[0], $date[1], $date[2]);
$datetime->setTime($time[0], $time[1], $time[2]);

print $datetime->format('Y/m/d H:i:s');

?>
0 голосов
/ 08 декабря 2010

Имейте в виду, что некоторые сокращения TimeZone, такие как EST, не являются уникальными. Смотри http://www.timeanddate.com/library/abbreviations/timezones/.

Использование EST не рекомендуется, см. http://www.php.net/manual/en/timezones.others.php.

Вместо этого используйте, например, America/New_York.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...