最近需要做一个定时任务功能,从网站找了很多相关的代码,windows实现方法综合起来大概就两种,
一、使用PHP ignore_user_abort 函数 即使关掉浏览器也能正常运行;(个人感觉PHP代码定时执行任务的效率不是很高)
二、通过windows下任务管理计划执行PHP任务程序;
最长期有效的办法还是交给shell来做;
如何在WINDOWS任务计划程序下执行PHP文件,简单总计总结了一下
一、新建两个测试文件
demo.php 暂放在程序根目录
<?php
/*
young 375858706@qq.com
2017年2月24日
*/
$fp = @fopen("test.txt", "a+");
date_default_timezone_set(PRC);
$data = date("Y-m-d H:i:s",time());
fwrite($fp , $data. " 让PHP定时运行吧!<br>");fclose($fp);
?>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
testPHP.bat 暂放在程序根目录
D:
"D:\phpStudy\php\php-5.5.38\php.exe" -f "D:\phpStudy\WWW\demo.php"
- 1
- 2
二、打开 任务计划程序
开始-控制面板-管理工具-任务计划程序
添加任务 配置如下
下面需要测试配置是否正常运行
如果测试直接点击右侧运行即可,如果添加定时任务,添加一个触发器任务即可
运行结果如下 :