我什么时候需要使用cron?

时间:2012-07-23 23:36:10

标签: php cron

让我们说有一个帖子(在论坛上)只会活动3天。现在,3天后,我希望这个线程自动关闭。

我可以在数据库中创建此线程时使用时间参考,如果当前日期+天数大于创建日期,则使用 if 语句,我将打印出"<h2>Thread Closed for posting</h2>" < / p>

当我考虑其他一些任务时,我想我可以使用时间参考并在此处执行某些事件。

我是对的吗?

3 个答案:

答案 0 :(得分:2)

您可以使用cron(每分钟运行一次)将线程表上的状态字段设置为关闭,例如。

UPDATE threads
SET status='closed'
WHERE lastPost+INTERVAL 3 DAY<NOW()

然后在PHP中使用诸如

之类的东西
if($thread['status'] == 'closed')
{
   // Put your HTML here.
}

答案 1 :(得分:2)

'cron'是以特定间隔或时间运行的任务。这意味着它应该用于必须在没有用户交互的情况下完成的任务。例如,备份,自动发送电子邮件或从远程服务中提取数据。

您想要的更适合检查线程是否已关闭的条件。您还可以检查年龄,而不仅仅是拥有一面旗帜。这意味着您无需编辑数据库即可更改旧线程逻辑。

答案 2 :(得分:0)

您可以创建一个由cron执行的PHP脚本(阅读如何在命令行中执行PHP),该脚本选择某个日期中的所有帖子,然后将它们设置为关闭。如果你每天跑两次,那么你就可以把关闭所有这些帖子做得很好。

Good reference on using cron to run PHP