首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PHP和MySQL存储当前时间的推荐方法是什么?

问使用PHP和MySQL存储当前时间的推荐方法是什么?
EN

Stack Overflow用户
提问于 2010-02-24 05:44:08
回答 5查看 27.3K关注 0票数 11

我最初的做法是:

代码语言:javascript
复制
$current = time(); // save this to column CURRENT_TIME with column type VARCHAR

//retrieve it like this
$retrieved = mysql_query(....) //assume query for getting the stored time value
$time = strtotime($retrieved);

我遇到了以下几种方法:

  1. 使用gmstrftime处理格林尼治时间
  2. 对列使用INT而不是VARCHAR
  3. 使用mysql函数CURTIME或CURDATE
  4. 使用UNIX_TIMESTAMP mysql函数

其中没有一个使用DATETIME或TIMESTAMP mysql类型。

你有更好的方法吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-02-24 06:29:36

建议使用mysql 时间戳(YYYY:MM:SS)字段类型在mysql中存储时间和日期变量。

代码语言:javascript
复制
$sDate = date("Y-m-d H:i:s"); // 2015-04-07 07:12:51
mysql_query("insert into `table_name` set `created_on` = '$sDate'");

它使您能够使用mysql函数直接在mysql查询中比较日期、计算时间差等等。

此外,您还可以使用标准时间()函数检索时间戳。

代码语言:javascript
复制
$result = mysql_query("select `created_on` from `table_name`");
$row = mysql_fetch_row($result);
$iTimestamp = strtotime($row[0]); // 1428390771
票数 19
EN

Stack Overflow用户

发布于 2010-02-24 09:06:44

我只在MySQL中使用MySQL值类型,让MySQL使用自己的CURRENT_TIMESTAMP。

票数 3
EN

Stack Overflow用户

发布于 2010-02-24 05:46:33

好的,您可以使用MySQL将strtotime()时间戳字段转换为PHP ()值

然后,您只需创建一个将PHP ()值正确转换为MySQL时间戳值的函数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2323945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档