问题描述
我想创建一个 PHP 脚本,该脚本将不间断运行并每分钟/小时执行一些指令(根据我的需要)。它不应该死。
我应该如何进行这个?我如何启动脚本本身?
到目前为止我所做的是创建一个无限循环并检查时间,如果是新的一分钟,则调用我的函数。但是当我调用链接时,它显示我的浏览器正忙。
我希望脚本在 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 选项卡文件是一个文本文件,其中包含要在指定时间运行的命令列表,cron 守护程序会检查 crontab 文件中的命令及其运行时间,后者在系统后台执行它们。
现在,在您自己的 cron 选项卡文件中创建或编辑条目:
$ crontab -e
在 crontab 文件中添加一个条目。您必须记住的一件事是,要执行 php 脚本,请使用 php 可执行文件并从您的 crontab 中调用 php 脚本,如下面的示例所示
*/2 * * * * /usr/bin/php /var/www/html/project/cron-file.php
This 参考可能对您有帮助。
希望这个回答有帮助。