本篇文章给大家介绍一下PHP如何利用服务器实现定时任务?有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
利用服务器实现简单的定时任务,Windows的计划任务,Linux的cron,适用于每天某一特点时间执行
1.windows下定时访问指定url
windows下用定时任务执行auto.php文件, auto.php文件里用curl请求指定的接口实现
auto.php 代码如下
function doCurlGetRequest($timeout = 5){ $url = 'http://127.0.0.1:81/index.php?s=/Admin/Index/dayBonus.html'; $con = curl_init((string)$url); curl_setopt($con, CURLOPT_HEADER, false); curl_setopt($con, CURLOPT_RETURNTRANSFER,true); curl_setopt($con, CURLOPT_TIMEOUT, (int)$timeout); return curl_exec($con); } $result = doCurlGetRequest(); var_dump( $result); die;
新建bat文件命令如下
C:phpStudyPHPTutorialphpphp-7.2.1-ntsphp.exe -q C:zxauto.php
php路径:
C:phpStudyPHPTutorialphpphp-7.2.1-ntsphp.exe
auto.php路径:C:zxauto.php
window 计划任务
2.linux下请求url
Linux上使用CronTab定时执行
执行 crontab -e
进入编辑模式增加一行
* * * * curl https://www.aaa.com/aaa.php
前面一部分是时间,后面操作内容。
30 * * * *
30就是每小时分钟数为30时,执行。
时间参数由以下几部分构成
分 时 日 月 周
第1列表示分钟1~59 每分钟用或者 */1表示,/n表示每n分钟,例如*/8就是每8分钟的意思
第2列表示小时0~23
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6
推荐学习:php视频教程