PHP设置进程的间隔

时间:2013-11-13 12:36:25

标签: php mysql

我有一个API fetcher脚本,它从XML文件读取值并将数据更新到mysql。它每次通过ajax调用时都会更新数据库。

现在我想在查询更新前大约一天设置一个间隔。我应该使用哪种php功能或方法?

我想我应该让自己更清楚一点,这些是步骤:

  1. 用php
  2. 读取的xml文件
  3. 回应结果。

  4. --->如果(mysql更新时间> 24 * 60 * 60秒)更新数据库

    --->如果没有,什么都不做。

  5. 我无法弄清楚我应该如何处理(3)

    步骤

2 个答案:

答案 0 :(得分:1)

嘛!据我了解你的问题。我认为你应该使用SQL而不是PHP。

使用Insert查询在db中保存更新时间。每次更新时调用存储过程。就像在MySQL中一样:

Begin
    //Adding updtime column value into a Variable called @a
    select @a:=updtime from abc order by id desc limit 1;

    //DATE_ADD() is a function of MySQL to get Time after adding Hours or Minutes etc. More can be found in MySQL Manual online
    if DATE_ADD(@a, INTERVAL 24 HOUR) > now()
    then insert into abc values ('XML',now());
    end if;
End

你也可以在没有变量的情况下做到这一点,而这样做会更好

    if DATE_ADD((select updtime from abc order by id desc limit 1), INTERVAL 24 HOUR) > now()

答案 1 :(得分:0)

我能想到的最佳解决方案是Cron Job。

This page will give you detailed information