这对我来说真的很奇怪。
我试过了:
<?php echo strtotime(date("Y-m-d H:i:s")); ?>
它返回: 1351498120 。
此外,当我运行此查询时:SELECT UNIX_TIMESTAMP(now())
,
它返回了相同的结果: 1351498120 。
但是当我尝试:<?php echo strtotime(date("2012-10-29 18:00:00")); ?>
返回: 1351533600 。
然而,如果我运行此查询:SELECT UNIX_TIMESTAMP('2012-10-29 18:00:00')
,
它返回: 1351513800
现在我的问题是:为什么php和mysql的时间戳对于当前日期是相同的,但是对于将来的日期会有所不同?有没有办法比较它们的未来日期?
(注意:我在UTC中将UTC作为默认时区)
答案 0 :(得分:7)
2之间存在 5.5小时差异,这表明它是两个时区问题。 MySql Server的时区可以配置不同。
SET time_zone = timezonename;
可用于为当前会话设置时区。 检查 MySQL Date and Time Functions
答案 1 :(得分:1)