什么是time()的MYSQL变体?

时间:2011-03-01 16:59:50

标签: php mysql

在我的脚本中,我将PHP time()值存储在数据库中。 我有一个简单的解决方案,但我敢打赌它肯定不是最“干净”的解决方案。

   <?php
   $time = time(); 
   mysql_query("DELETE FROM table WHERE expire < '$time';");
   ?>

是否存在与PHP time()函数格式相同的MySQL函数?

  • 我的列是INT(10)
  • 类型
  • 我只需要进行简单的服务器端比较,我就不必显示它。

提前致谢! PS:请通过纠正我来支持我的英语:)

编辑:我会选择UNIX_TIMESTAMP(),感谢所有人,帮助我并讨论最佳选择。

3 个答案:

答案 0 :(得分:3)

是的。您可以使用now函数。

mysql_query("DELETE * FROM table WHERE expire < NOW();");

编辑:我建议您使用此功能而不是UNIX_TIMESTAMP。原因是您的列类型应为DATE且不长。在这种情况下,您可以在日期列上执行时间功能,您无法轻松执行时间戳值。

答案 1 :(得分:2)

SELECT UNIX_TIMESTAMP(); // returns 1298999053 for example

这样:

mysql_query("DELETE * FROM table WHERE expire < UNIX_TIMESTAMP()");

答案 2 :(得分:1)

在MySQL中,该函数名为now()。

DELETE * FROM table WHERE expire < now();