在MySQL中存储时间戳

时间:2014-12-27 23:16:11

标签: php mysql timestamp

我从网页抓取数据,该网页以下列形式返回时间戳(这是一个字符串):

2013-11-09T15:14:48.957604

我如何在PHP中解释这一点,以及在MySQL数据库中存储它的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

存储它的最佳方法是使用MySQL DATETIME数据类型。它专门用于处理日期/时间值,它可以在2037年之后工作,这是使用unix时间戳的近似限制。 MySQL和PHP都可以使用内置函数/库轻松处理这些值(对于PHP,请参阅另一位评论者提到的DateTime类)。

http://dev.mysql.com/doc/refman/5.5/en/datetime.html

http://php.net/manual/en/class.datetime.php

答案 1 :(得分:0)

我只想扩展这里给出的信息。

这会将字符串转换为DateTime对象。

$dtObject = new DateTime("2013-11-09T15:14:48.957604");

但是,为了在数据库中存储时间戳,有几个要求。

  • 需要在Y-m-d H:i:s格式。
  • MYSQL列类型必须为datetime/timestamp
  • 需要成为一个字符串。

现在,为了使这个时间戳成为MYSQL友好格式,我们需要使用format函数。

$timestamp = $dtObject->format('Y-m-d H:i:s');

您现在可以INSERT进入数据库。您也可以按照这些date formats输出相同的方式。