将UTC时间戳从数据库转换为用户本地时间

时间:2011-02-11 20:56:47

标签: php mysql datetime smarty

问题:如何在用户本地时间显示数据库表中的UTC时间戳?有没有办法用PHP做到这一点?

额外背景\ /
我有一个应用程序保存日期记录添加到数据库。我使用mysql UTC_TIMESTAMP()保存数据库中的记录。然后,我想在我的Smarty模板中以当地时间向用户显示记录。

{$dateAdded|smarty_modifier:"%D %R %Z"}

我已经尝试过smarty,date_format作为修饰符,但我只是得到UTC时间和人物时区,这当然是正确的,但不是我想要的结果。

02/11/11 20:32 Pacific Standard Time

我需要时间,所以设置为用户的当地时间

02/11/11 12:32 Pacific Standard Time

以UTC格式存储交易日期是否正确,以及如何在当地时间向用户显示该UTC?有没有办法从数据库中提取日期,以便将其设置为用户当前的当地时间?

1 个答案:

答案 0 :(得分:-1)

您可以在调用Smarty模板之前使用date_default_timezone_set()。这直接定义了UTC时间戳如何适应预期的输出时区。