我正在使用日期时间对象的函数,该函数需要datetimezone对象作为参数。我在这里看到了一个时区列表:
http://www.php.net/manual/en/class.datetimezone.php
但是没有像'est'这样的东西。我如何从EST创建'datetimezone'对象?
答案 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
。