首頁 >後端開發 >php教程 >crontab - PHP如何执行定时任务?

crontab - PHP如何执行定时任务?

WBOY
WBOY原創
2016-06-06 20:31:351335瀏覽

PHP如何执行定时任务,让其去执行一个文件或者是访问一个URL地址

crontab可以行。但是虚拟主机是无法进入shell的。有什么办法可以解决吗

回复内容:

PHP如何执行定时任务,让其去执行一个文件或者是访问一个URL地址

crontab可以行。但是虚拟主机是无法进入shell的。有什么办法可以解决吗

楼上有提到swoole的常驻内存的方式,类似的yaf,workman...都不行。
因为别人是在虚拟主机,跟本不能安装swoole拓展,sae可以用yaf,没有使用过,不知道威力怎么样。
题主这样的情况,我建议还是搞个第三方的来定时访问比较好,实在不行,就用自己的电脑定时去触发你的PHP方法。

虽然有各种奇巧淫技,不过推荐比较实际的做法,还是找一个有服务器的朋友,写一个crontab,定时访问你的一个线上地址来执行任务就行了。

现在推荐使用swoole搭配任务来处理定时和异步任务,可以参见:https://github.com/osgochina/swoole-crontab

这个可以写一个脚本,长期执行。外层是一个while(true) ,内部判断当前是否是可执行任务的时间,如果是,则运行你的定时任务。如果否,则sleep一段时间,几秒钟到一分钟不等,视业务需求。

其实就是用轮询的方式模拟crontab而已。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn