通过SQL运行定时PHP函数


Run timed PHP function via SQL

有没有办法每小时自动运行一个PHP文件?通过SQL或其他方式。我目前正在处理一个文件,他的工作是每小时从一张表中提取信息。此文件需要每小时执行一次。有办法做到这一点吗?

PHP和MySQL都没有这种能力。

此功能通常可由您的操作系统或外部工具使用。

Windows有一个作业调度程序,或者Unix和变体有crontab,您可以在其中指定必须定期运行的命令。

它不是一个内置的设施。然而,它可以通过一些外部工具或使用为其编写并加载在机器上的其他php代码来完成

如果你的主机上有cron,你可以使用它。cron可以随时运行php脚本或任何其他脚本。它是自动化的,所以你只需要把时间细节放进去,让它自己变魔术。

首先,将要每小时运行一次的脚本放入文件中。然后从您的cpanel中搜索cron或crontab(或者您正在使用什么)。然后设置时间细节(如果你的面板上有这些输入)。然后,写入命令输入:php /your/full/path/here/。如果您没有用于设置crons(cron时间)的GUI,您可以使用以下命令:

0 * * * * php /your/full/path/here/

Cronjobs已经在我上面的问题中提到了。你应该试着用Cronjobs找到一个解决方案。

但是如果不能,可以使用php time_sleep_till函数。医生在这里:http://www.php.net/manual/en/function.time-sleep-until.php

在第一个参数中输入一个时间戳,php脚本将一直休眠到给定时间。然后你就这样度过了一辈子。这不是一个好的解决方案,但它有效。

请记住忽略用户中止并将超时设置为无限。