2012-03-23 31 views
0

我有这些时区。我想获取当前的日期时间取决于给定的时区。用户将选择一个时区。所以需要返回当前时间。在php中转换时区

ASKT
CDT
EDT
HST
MDT
MST
PDT

我怎样才能转换?请帮助

回答

1

使用DateTime Class

$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 

这一点,这样你不必像秘书科的回答每次都给予同样的时间戳新的说法。

+0

但是我只有缩写(ASKT,...) – Anand 2012-03-23 07:35:01

1

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"; 
    ?>