在我的PHP.ini
文件中,我像这样设置时区......
'America/New_York'
所以当我运行一个简单的 php Date() 函数时
echo date("Y-m-d H:i:s");
我根据“我的”系统时间获得了正确的日期时间,因为这就是我要比较的时间,并且也想存储在我的 MySQL 数据库中。(据 PHP 报道)。
现在的问题是,我将 MySQL db 导出为 PDF 格式,只是为了看看它的样子,时间是 1 小时前,例如......这里是(上午 10:00),PDF 页脚说(9: 00 点)
所以..我开始思考..我的PHP脚本将INSERT
我需要的正确日期时间输入数据库..但是我有很多日期时间比较帐户,
我知道如果我在 phpMyAdmin 中运行任何 MySQL 查询,那么我会得到错误的日期时间。
我试过运行(phpMyAdmin SQL Query)
SET time_zone = 'America/New_York';
-and-
SET time_zone = '-05:00';
但是当我运行查询时
SELECT @@global.time_zone, @@session.time_zone;
我回来SYSTEM
了SYSTEM
。
(我还应该提到我在共享主机上)
如果我NOW()
在查询中使用 MySQL 函数,输入到数据库的时间将由 MySQL根据它自己的 timezone计算。
像这样..
mysql_query("INSERT INTO table (id, value, time_created)
VALUES ('{$id}', '{$value}', NOW())");
我知道我必须在 PHP 中进行所有的插入和比较以保持正确的时间.. 但是在上面的情况下,它会插入错误的时间。
所以这是我的困境......
但这会影响我没有预见到的任何事情吗?我只是觉得这会以某种方式影响我的时代。
那么我怎样才能解决这个问题或在同一时区获取 MySQL 呢?并确保我所有的日期/时间都是正确的,而不是落后 1 小时..