通过PHP插入MYSQL的UNIX时间戳问题

时间:2010-10-18 23:35:14

标签: php mysql database datetime

我使用以unix时间戳格式给出的创建时间字段接收数据,例如“1251324809”,据我所知,这是自1970年纪元以来经过的时间量。

我在MYSQL表中有一个DATETIME格式化字段,我使用它来将UNIX时间返回到YY-MM-DD HH:MM:SS格式:

date('Y-m-d H:i:s', $timestamp);

然后将其存储在数据库中。问题是我的一些日期被准确存储,其中一些被存储为1970-01-01 02:00:00,它只是一小部分数据,但我需要知道为什么?我有时可能会错误地收到数据吗?

2 个答案:

答案 0 :(得分:1)

  

我有时可能会错误地收到数据吗?

可能。 1970年1月1日指向$timestamp为零或无法解析为时间戳的值。

答案 1 :(得分:0)

我发现php和mysql中的日期永远不会正常工作。特别是因为我的时区与我的服务器截然不同。

在mysql中,我通过将日期字段存储为int(11)

来避免此问题

然后我将php计算的时间戳(通常是通过time())插入其中。