Maison >développement back-end >tutoriel php >crontab - cron thinkSegmentFault

crontab - cron thinkSegmentFault

WBOY
WBOYoriginal
2016-06-06 20:11:00937parcourir

有一个需要是要在后台长时间执行一个php脚本
我们使用的thinkphp框架
我查看了一下网上关于cron的使用
都要使用cron请求一个url地址
调用起来thinkphp的action
感觉这样不是特别合理
通过url的话还要过nginx fpm
是不是可以做到直接访问php文件
但是如果直接访问php文件
自动加载也是一个问题
各个大神怎么说!

回复内容:

有一个需要是要在后台长时间执行一个php脚本
我们使用的thinkphp框架
我查看了一下网上关于cron的使用
都要使用cron请求一个url地址
调用起来thinkphp的action
感觉这样不是特别合理
通过url的话还要过nginx fpm
是不是可以做到直接访问php文件
但是如果直接访问php文件
自动加载也是一个问题
各个大神怎么说!

首先ThinkPHP是支持cli模式下执行的,在项目目录中可以直接执行php index.php index/index

然后写一个非常简单脚本来跑thinkphp的命令行

cli.sh

<code>sh -c "cd /home/wwwroot/think3;php index.php index/index;"</code>

然后crontab -e编辑任务,假设每分钟执行一次就是

<code>*/1 * * * * /bin/sh /root/cli.sh</code>

以上流程在thinkphp3.2.3下测试通过

thinkphp也支持cli模式

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn