繁体   English   中英

如何从PHP脚本设置cron作业?

[英]how to set cron job from php script?

我是cron工作的新手。 我研究了一些关于cron工作的基础知识。 我可以使用cron选项卡调用php。 在/ etc / crontab中使用以下命令

  10 *    * * *   root    /usr/bin/php /var/www/PATH TO SCRIPT/email.php 

在email.php中,我有以下代码

 #!/usr/bin/php
 <?php
    mail ("examplemail@mail.com", "Cron Successful Public HTML!","Hello World from mycron.php!");
 ?>

每10分钟我收到邮件。 但我需要知道有没有办法从PHP调用cron作业(从php调用cron)我通过冲浪得到一些想法,但我无法弄清楚完成我的工作的确切方法。 这是我用来通过使用php添加作业的代码

   exec('echo -e "crontab -e \n2 * * * * /usr/bin/php /var/www/PATH TO THE SCRIPT/crontest1.php" ');

它不适合我。 任何人都可以指导我如何从PHP调用或添加cron。 所以我可以通过执行php文件发送邮件,并能够改变php文件本身的时间间隔。

如何通过Nick Clark的 PHP脚本设置cron作业

这将添加一个每天早上9:30运行的脚本。

 exec('echo -e "`crontab -l`\\n30 9 * * * /path/to/script" | crontab -'); 

如果从Web服务器运行此脚本,则可能会遇到权限问题。 为了解决这个问题,我建议采用不同的方法。

这是一种可能的解决方案。 创建需要运行的脚本列表。 您可以将其保存在文本文件或数据库中。 创建一个脚本来读取此列表并每分钟或每5分钟运行一次(使用cronjob)。 您的脚本需要足够聪明,以决定何时运行脚本列表以及何时退出。

你可以这样做..

其他链接:

使用php脚本安装cron作业

如何从php脚本调用cron作业?

您应该可以直接添加它

echo "2 * * * * /usr/bin/php /var/www/PATH TO THE SCRIPT/crontest1.php\n" > /etc/cron.d/username

许多环境不允许从Web调用的php页面写入​​文本文件。 我同意这是一个不应该采取的安全风险。

我有一个网页通过JQuery调用php脚本将数据保存到MySQL表。 在Cron中,我会安排另一个php脚本,经常检查MySQL表中的数据并执行必要的任何工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM