如何更改时间戳数据的时区

时间:2014-09-10 06:57:55

标签: php mysql datetime

date_default_timezone_set('Europe/Belgrade');

现在,我从mysql表/名为date的时间戳列中获取数据

echo date("d. m. H:i", strtotime(htmlspecialchars($r['date'])))

结果是(例如) - 10. 09. 02:36

所以,它有效,但不是在期望的时区。显示的数据来自服务器的位置时区。

如何根据我的时区重新计算数据?

3 个答案:

答案 0 :(得分:2)

我遇到了几乎同样的问题,这就是我做的事情

$mdate=new DateTime($date);
$mdate->setTimezone(new DateTimeZone('Australia/Melbourne'));
$newtime= $mdate->format("jS F, Y h:i:s a");

希望它有所帮助。

答案 1 :(得分:0)

只需这样做

 $timezone = "Asia/Calcutta";
 date_default_timezone_set($timezone);
 echo date("d. m. H:i", strtotime(htmlspecialchars($r['date'])))

这将为您提供正确的结果

答案 2 :(得分:0)

  

现在查看此代码。

 date_default_timezone_set('America/New_York');
        $date = date('m/d/Y');
        $time = date('h:i'); 
        echo $date;
        echo $time;