Cronjob和PHP一起工作


Cronjob and PHP working together?

我编写了一个PHP脚本,将CSV文件推入数据库。我想每分钟都自动完成。我知道在Linux上有一种通过cron的方法,但我对bash一无所知,我认为cron不能给我的PHP文件一个回调,所以我可以显示一个进度条,让用户查看计时器间隔。我该怎么办?

您可以使用crontab -e输入您的作业。如果您的默认编辑器是vi,我建议使用export EDITOR=nano将其更改为nano,因为它对于初学者来说很容易使用。

crontab文件的每一行都代表一个作业。前5个令牌分别是:分钟、小时、月、月、周,最后一个是命令,因此在您的情况下,前5个标记将是***,这意味着当秒为"00"时,每分钟运行一次此作业。

您可以使用以下命令直接调用php文件:php /var/www/cron.php &或使用浏览器wget -O /dev/null http://example.com/cron.php。如果使用第一个,则不能使用一些$_SERVER变量,但如果使用第二个,则它就像一个真正的浏览器。

在你的情况下,你可以这样使用:

* * * * * wget -O /dev/null http://example.com/cron.php
要添加cron并使其每分钟运行一次,请键入crontab -e并添加以下行
* * * * * command you need executing

示例:

* * * * * ls -l /home/ > /usr/local/users.txt
* * * * * df -h > /tmp/filesystem_usage.txt
* * * * * service httpd restart

先看看这个:http://kvz.io/blog/2007/07/29/schedule-tasks-on-linux-using-crontab/

还要记住,cronjobs不支持所有的$_SERVER变量,如"DOCUMENT_ROOT"answers"HTTP_HOST",所以请尽量避免它们,或者使用变通方法。

一些"回调"的可能性:-让您的脚本触发另一个脚本-将cron的输出重定向到另一个bash脚本-。。。