2010-10-18 117 views
0

林接收与在例如“1251324809” Unix时间戳格式我的理解是的,因为历元经过的时间量给定的一个创建时间字段的数据,1970年UNIX时间戳问题通过PHP

插入香港专业教育学院在MySQL表有一个DATETIME格式字段,并使用该即时通讯的UNIX时间返回到YY-MM-DD HH:MM:SS格式:

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

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

回答

1

AM I也许接收数据不正确有时?

也许。 1970年1月1日指向$timestamp为零或不能被解析为时间戳的值。

+0

将它也许是,如果我用isset来测试,如果有一个值,如果没有分配给它的当前时间更优雅? – 2010-10-18 23:42:18

+0

@Baadier这完全取决于你的数据库 - 但我宁愿插入'0000-00-00 00:00:00'到数据库中,如果时间戳是零 – 2010-10-18 23:43:30

+0

ID希望能够与拉的数据进行工作,并与内容被Twitter动力我可以认为,即使时间戳错误,数据将至少是最新的。因此,与Twitter的API只允许搜索7天我可以假设,含量不能超过7天,因此在即时通讯正在接收不正确的时间戳的情况下,分配当前的时间比较舒适。 – 2010-10-18 23:48:39

0

我发现,在PHP和MySQL日期从不正常工作。与我的服务器相比,我处于一个截然不同的时区。

在MySQL我通过具有存储为INT(11)中的日期字段

然后我插入PHP计算时间戳(通常是通过时间())放进去避免该问题。