php - datetimezone

时间:2010-12-07 14:58:18

标签: php datetime timezone

我正在使用日期时间对象的函数,该函数需要datetimezone对象作为参数。我在这里看到了一个时区列表:

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

但是没有像'est'这样的东西。我如何从EST创建'datetimezone'对象?

4 个答案:

答案 0 :(得分:6)

$tz = new DateTimeZone('EST');

答案 1 :(得分:2)

http://www.php.net/manual/en/timezones.php中,您可以在其他部分找到EST。

创建一个用途 date_default_timezone_set('EST');

要确保拥有 echo date_default_timezone_get();

答案 2 :(得分:1)

一个非常详细的循环。 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');

?>

答案 3 :(得分:0)

请注意,EST之类的某些TimeZone缩写不是唯一的。请参阅http://www.timeanddate.com/library/abbreviations/timezones/

不建议使用EST,请参阅  http://www.php.net/manual/en/timezones.others.php

请使用例如America/New_York