时间戳显示服务器时间,而不是本地时间

时间:2012-10-16 23:36:47

标签: php mysql phpmyadmin timestamp localtime

我有一个网站,用户(在不同的时区)可以在数据库中创建新记录,我目前每条记录都记录了创建时间的时间戳...我在EST时区,但是当我查看我在网站上创建的记录时,它们在MST中显示时间,这也恰好是服务器时区...当我查看数据库中的记录时,时间戳字段没有转换为utc,相反转换为mst ...我注意到当我从phpmyadmin插入一条记录时,我使用datepicker并选择18:35:01,但是当我在插入记录后查看记录时,它会显示15:35 :01!这是非常令人沮丧的,我一直在阅读时间戳字段应该自动转换为utc,我的不做...另一件事是,我目前正在使用日期函数格式化时间戳,显示在00- 00-00 00:00:00格式,这给了我一段时间的错误所以我开始使用strtotime,这可能是问题的一部分...我不确定...当记录插入数据库我是使用null作为值,因此它将自动使用当前的本地时间......但事实是,来自不同时区的不同人将创建记录而不是查看它们的人...所以我需要为所有这些提供...关于我做错了什么的建议?

1 个答案:

答案 0 :(得分:0)

您可以设置PHP脚本使用的时区

date_default_timezone_set('America/Los_Angeles');

View the PHP Manual for more details