我有这些时区。我想得到当前的日期时间取决于给定的时区。用户将选择其中一个时区。所以需要返回当前时间。
询问
CDT
EDT
HST
MDT
MST
PDT
我如何转换?请帮助
DateTime::setTimezone将为您提供帮助。
<?php
$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo $date->format('Y-m-d H:i:sP') . "'n";
$date->setTimezone(new DateTimeZone('Pacific/Chatham'));
echo $date->format('Y-m-d H:i:sP') . "'n";
?>
使用DateTime
类
$time = time(); //Get the current time
$date = new DateTime($time, new DateTimeZone('Pacific/Nauru')); //Set a time zone
echo $date->format('Y-m-d H:i:sP') . "'n"; //display date
$date->setTimezone(new DateTimeZone('Europe/London')); //set another timezone
echo $date->format('Y-m-d H:i:sP') . "'n"; //display data again
这样,你就不必每次都像mishu的答案一样给出与新论点相同的时间戳。
请参阅"yahoodot.com上的_dark_lord12001"编写的类,这将帮助您从缩写中获取时区&那你就可以用了具有date_default_timezone_set或DateTime类
http://www.php.net/manual/en/datetimezone.listabbreviations.php
希望得到帮助。
~K