如何使用 PHP 创建 cron 作业?

新手上路,请多包涵

我是使用 cron 作业的新手。我什至不知道怎么写。我试图从互联网上搜索,但我仍然不太了解。我想创建一个每分钟执行我的代码的 cron 作业。我正在使用 PHP 来创建它。它不工作。

例子

run.php (每分钟执行的代码)

 <?php

echo "This code will run every minute";

?>

cron.php

 <?php

$path = dirname(__FILE__);
$cron = $path . "/run.php";
echo exec("***** php -q ".$cron." &> /dev/null");

?>

假设这两个文件在同一个文件夹中。

我做错了代码吗?如果错了,请告诉我如何解决它。

原文由 user2738520 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 356
1 个回答

最好将项目 Cron 与 Linux cronjob 结合使用来完成此任务。它允许您在 PHP 代码中配置运行时间,支持后台作业并且易于使用。

第一步每分钟调用一个 PHP 脚本:

 * * * * * /usr/local/bin/run.php &> /dev/null

第二步使用 cron/cron 包直接在 PHP 中配置运行时间。

 $deprecatedStatus = new ShellJob();
$deprecatedStatus->setCommand('cd /app && /usr/local/bin/php cron/updateDeprecatedStatus.php');
$deprecatedStatus->setSchedule(new CrontabSchedule('* * * * */2'));

$displayDate = new ShellJob();
$displayDate->setCommand('cd /app && /usr/local/bin/php cron/updateDisplayDate.php');
$displayDate->setSchedule(new CrontabSchedule('* * * * */5'));

您在链接的存储库中找到了如何使用的详细信息。

原文由 Thomas Eimers 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题