[英]strange timezone issue EDT/EST
我已经用SELECT @@system_time_zone;
检查了我的mysql系统时区SELECT @@system_time_zone;
及其在生产服务器中的返回EDT
。 现在,我想生成不起作用的相同时区(即EDT)的当前时间戳。 这是我到目前为止尝试过的
date_default_timezone_set('EST');
$ts = strtotime('now');
echo date('Y-m-d H:i:s',$ts);
和
$date = new DateTime(null, new DateTimeZone('EST'));
$ts = $date->getTimestamp();
echo date('Y-m-d H:i:s',$ts);
它的输出是2015-09-07 05:38:43
但我的mysql日期(时间戳)是2015-09-07 06:39:53
所以它不一样。 (通过插入相同时间进行测试)
那么如何根据mysql的系统时区 (EDT / EST) 获取当前时间戳 ? 专业人士的任何帮助
可以按以下方式检索全局时区和特定于客户时区的当前值:
mysql> SELECT @@global.time_zone, @@session.time_zone;
并尝试使用此代码设置时区和时区位置
<?php
$date = date_create('2000-01-01', timezone_open('Pacific/Nauru'));
echo date_format($date, 'Y-m-d H:i:sP') . "\n";
date_timezone_set($date, timezone_open('Pacific/Chatham'));
echo date_format($date, 'Y-m-d H:i:sP') . "\n";
?
注意第二个php代码只是一个例子。
希望对你有帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.