更改mysql中的时间戳

时间:2016-02-11 13:06:18

标签: mysql datetime

我住在菲律宾,当我在我的数据库中插入日期时,它在我的数据库中插入的时间减少了13个小时。例如,我们的日期时间是02-11-2016 21-04-00,当我插入时,它插入02-11-2016 08-04-00

我已经用过了:

date_default_timezone_set('Asia/Manila');

但没有运气。我已将网站放在我的域名中。

3 个答案:

答案 0 :(得分:1)

如果我没有错,你已经粘贴了php函数,它只为php设置time_zone而不是my_sql。 mysql具有可以设置的全局time_zone变量。您应该使用SET GLOBAL time_zone = timezone;SET time_zone = timezone;

如果在这种情况下你没有直接控制你的数据库服务器,你可以传递第二个语句,即set time_zone=...;作为第一个语句。

或者,您也可以使用convert_tz函数转换已存储的值。

答案 1 :(得分:1)

您设置的时区用于PHP,因为Bimal说,您还需要检查服务器时间,因为时间是您不想错过或玩的信息中非常敏感的部分。

几周前我一直处于这种情况,有两种方法可以解决它:

  • 将服务器时区设置为正确的时区。
  • 如果时差始终是13小时,请使用以下方法:

    $ new_time = date(“Y-m-d H:i:s”,strtotime('+ 13 hours'))。

我最终使用第二种方法,因为第一种方法不适合我。

最好的运气。

答案 2 :(得分:1)

这应该由

完成
date_default_timezone_set('Asia/Manila');

确保上传正确的文件。

如果不起作用;尝试制作一个错误处理页面,然后回显一个变量,该变量将设置此时区的时间(如果有效)。改为使用该变量。