如何在将来设置时间戳

时间:2012-04-03 14:42:09

标签: php mysql variables time datetime

我有一个关于计算时间的问题。

我有一个填充3列的简单表。第1列将由VALUE中的NOW()传递。第二列应该是NOW()时间戳加上14天。我之前从未使用过时间功能,所以我确实有一些理解问题。

我有这样的可能性:

$copy = "INSERT INTO table (a, b, c) VALUES (NOW(), $var_for_b, $var_for_c)";

用于

$var_for_b 

轻松

NOW()+14d

或者我是否必须使用时间/日期功能设置变量?

如果使用变量我该怎么办?

$in_14_days =mktime(+14d)

我的第三栏应该只是NOW()和NOW(+ 14d)之间的区别。

我很抱歉这个问题,但有很多时间功能,我不猜它们之间的区别。

6 个答案:

答案 0 :(得分:4)

您可以now() + interval 14 day设置日期。

所以你的插入语句变为:

$copy = "INSERT INTO table (a, b, c) VALUES (NOW(),now() + interval 14 day, $var_for_c)";

答案 1 :(得分:1)

您基本上将第二个时间添加到now var

答案 2 :(得分:1)

您可以使用:

NOW() + INTERVAL 14 DAY

答案 3 :(得分:1)

您可以使用date_add让MySQL使用date_add(now(), interval 14 day)

计算您的时间戳

答案 4 :(得分:1)

使用PHP和MySQL可以通过多种方式实现这一目标。

我建议使用这种方法:

UNIX_TIMESTAMP(NOW() + INTERVAL 14 DAY)

所以它看起来像这样:

$copy = "INSERT INTO table (a, b, c) VALUES (UNIX_TIMESTAMP(NOW() + INTERVAL 14 DAY), $var_for_b, $var_for_c)";

或者,您可以使用PHP来执行此操作:

$future = strtotime('+14 days');

答案 5 :(得分:0)

尝试strtotime(" + 14天");并查看这是否是您正在寻找的内容。

(来自strtotime() manual