我想创建一个 PHP 脚本,它将不间断地运行并每分钟/小时执行一些指令(根据我的需要)。它不应该死。
我应该如何进行这个?如何启动脚本本身?
到目前为止,我所做的是创建了一个无限 for 循环并检查时间,如果是新的一分钟,则调用我的函数。但是当我调用该链接时,它显示我的浏览器正忙。
我希望脚本在 Google Compute Engine 上运行,而无需从第二台计算机调用 URL。我想要类似android前台服务的东西,但对于PHP。
我想创建一个 PHP 脚本,它将不间断地运行并每分钟/小时执行一些指令(根据我的需要)。它不应该死。
我应该如何进行这个?如何启动脚本本身?
到目前为止,我所做的是创建了一个无限 for 循环并检查时间,如果是新的一分钟,则调用我的函数。但是当我调用该链接时,它显示我的浏览器正忙。
我希望脚本在 Google Compute Engine 上运行,而无需从第二台计算机调用 URL。我想要类似android前台服务的东西,但对于PHP。
对于 Unix 系统,此类任务的最佳实践是使用 Cron:https ://en.wikipedia.org/wiki/Cron
不仅适用于 PHP,还适用于任何定期任务。
Cron 作业就是答案。
Cron 基本上是一个作业调度守护进程。它在后台运行并自动执行。您可以将其设置为在您希望的任何时间运行。cron 的这种性质使其对自动化任务很有用。cron 作业是我们在 cron 的帮助下执行的任务。
因此,如果您在 cron 的帮助下运行 php 脚本,它将在后台运行。我们不需要在脚本中运行任何无限循环。您还可以将 cron 作业设置为在特定时间运行。它如何运行以及何时运行完全取决于您如何配置 cron 作业。为此,您必须编辑 crontab 文件。cron 选项卡文件是一个文本文件,其中包含要在指定时间运行的命令列表,crontab 文件中的命令及其运行时间由 cron 守护程序检查,该守护程序在系统后台执行它们。
现在,要在您自己的 cron 选项卡文件中创建或编辑条目:
$ crontab -e
在 crontab 文件中添加一个条目。您必须记住的一件事是,要执行 php 脚本,请使用 php 可执行文件并从您的 crontab 调用 php 脚本,如下例所示
*/2 * * * * /usr/bin/php /var/www/html/project/cron-file.php
此参考资料可能对您有所帮助。
希望这个答案有帮助。