【发布时间】:2010-11-08 03:30:36
【问题描述】:
我在stackoverflow上搜索过帖子,发现了一些类似的帖子。但我认为这是不同的。
我的 PHP 和 Mysql 服务器的时区都设置为“UTC”。
在我使用时间戳字段的表中,值为“2010-11-08 02:54:15”,我使用这样的sql:
SELECT id,
updated,
second( updated ) ,
unix_timestamp( updated )
FROM `transaction`
where id = 56
知道了:
id updated second unix
--------------------------------------------
56 2010-11-08 02:54:15 15 1289184879
然后我在php中使用这个:
echo strtotime("2010-11-08 02:54:15");
知道了:
1289184855
不同的是 24 秒。
我在http://www.unixtimestamp.com/index.php 上检查这些时间戳 php 结果是正确的。那么mysql unix_timestamp函数有bug吗? mysql版本为:5.1.41
【问题讨论】:
-
仅供参考,
SELECT UNIX_TIMESTAMP('2010-11-08 02:54:15');在 MySQL 5.1.37 上给我 1289152455。 -
我也是,@deceze,我和 OP 一样使用 MySQL 5.1.41。
-
我无法在 5.1.49 上使用与 TIMESTAMP 或 DATETIME 相同的值进行复制。