定时器php windows任务计划
背景:因为需要每天从接口处获取一次数据,所以难免会用到这让人又爱又恨的定时器/计划任务。
网上搜索了一番,大致有以下两类:
1:配合使用ignore_user_abort()和set_time_limit(),使脚本脱离浏览器运行。
1 ignore_user_abort(); // 后台运行 2 set_time_limit(0); // 取消脚本运行时间的超时上限 3 $interval=30;// 每隔30S运行,这个间隔时间是可以随着 需要进行修改 4 do{ 5 //抓取数据 6 sleep($interval); 7 }while(true);
非常的小巧精悍,即便浏览器关掉也能运行,可这是一个死循环,重启apache才能终止掉它。
改进:
1 ignore_user_abort(); // 后台运行 2 set_time_limit(0); // 取消脚本运行时间的超时上限 3 $interval=30;// 每隔30S运行,这个间隔时间是可以随着 需要进行修改 4 do{ 5 $flag = include 'flag.php'; 6 //抓取数据 7 sleep($interval); 8 }while($flag); //flag.php<?php return 1;?>
在do的时候引入flag.php文件,将其值赋予$flag,并作为判断循环的条件。
在服务器上测试过每隔一分钟执行一次,没什么问题,开心的把秒数改为一天,任务完成。
因为服务器在内网,离开环境后我不知道程序执没执行,几天后再次查看,发现只跑了一次...原因未明..
看来这办法不是很稳,看来只能祭出我的杀手锏了!
2:windows任务计划程序
打开任务计划程序->任务计划程序库->创建任务
取个名字,该勾选的勾选,来到触发器页面,新建
比如设置明天开始,每天9:00执行一次
确定,来到操作页面,新建
程序或脚本,选择要执行的bat文件,启始于(可选)填上bat文件所在的目录
这样,基本的设置就完成了!
然而...并没有...重点是bat文件
如果要定时执行某个php文件,bat文件里可以这么写
D:\php\php.exe -q D:\www\test.php
意思就是让php.exe去执行test.php这个文件。
然而...如此这般,我并不能调用框架里的CURD操作来整理我从接口获取的数据,
当然,用PDO链接数据库,再insert也可以,虽然比较麻烦。
不过,其实有更简单的方法。
也是用windows的任务计划程序,
不过不是执行php文件,而是让ie浏览器打开一个URL再关闭ie浏览器
在bat文件里这么写
@echo off
echo 正在关闭未关闭的IE进程,请稍等......
taskkill /f /im iexplore.exe
echo -------------开始运行指定的网页页面----------
::echo.&pause
start "" "C:\Program Files\Internet Explorer\iexplore.exe" http://localhost/0915/Home/balabala/open
echo IE打开完成!
::echo.&pause
ping 127.0.0.1 -n 2
taskkill /f /im iexplore.exe
完美,简单粗暴。
PS.linux下的定时器还没学,到时候再添加。
参考文章:
http://blog.csdn.net/woshixuye/article/details/18050769
http://www.cnblogs.com/lcword/p/5634284.html
http://blog.csdn.net/happy_jijiawei/article/details/50813977
http://blog.csdn.net/skygreen_2001/article/details/7974245
转载于:https://www.cnblogs.com/huijiangzzy/p/7525351.html
定时器php windows任务计划相关推荐
- Windows任务计划创建计划,定时执行PowerShell命令
[环境介绍] 操作系统:Windows Server 2012 R2,64位操作系统 PowerShell版本:PowerShell 1.0 脚本位置:C:\BackUp.ps1 启动目录:C:\Wi ...
- 计划任务执行 php代码,php实现Windows任务计划定时执行的代码以及扩展(图)
任务计划在我们的日常工作开发中,有很大用处.有时项目需要大批量的数据更新插入数据库中,那么我们为了能够节约资源,需要定时时间段进行自动计算,为此,我们就需要php计划任务来实现,那么我们今天就给大家介 ...
- 宝塔定时任务执行php源码任务_在WINDOWS任务计划程序下执行PHP文件 PHP定时功能的实现...
最近需要做一个定时任务功能,从网站找了很多相关的代码,windows实现方法综合起来大概就两种, 一.使用PHP ignore_user_abort 函数 即使关掉浏览器也能正常运行:(个人感觉PHP ...
- 使用PowerShell和Windows任务计划程序备份Linux SQL Server数据库
This article is an in-depth guide on how PowerShell can be used to maintain and manage SQL backup on ...
- Windows 任务计划程序
Windows 任务计划程序 任务计划程序 Windows 前言 一.操作方法 前言 有时候需要定时执行某个程序或者脚本,可以使用Windows自带的任务计划程序,本文介绍了如何在任务计划程序库中添加 ...
- 使用Windows任务计划自动运行Python程序
目录 1.编写Python程序 2.编写Windows批处理命令 3.创建Windows任务计划 3.1 在程序栏搜索:任务计划程序 3.2 点开后如下图,右键新建一个文件夹: 3.3 创建一个叫Py ...
- Windows 任务计划程序定时执行 powershell 脚本
由于需要进行一些特殊操作,打算使用 powershell 来写脚本,需要Windows 任务计划程序定时执行. 怎么在Windows 任务计划程序中执行powershell脚本?? 做一个简单测试:本 ...
- windows 任务计划
php任务计划执行: 创建windows 任务计划 定时执行php程序,在一般设置的情况下,当任务计划执行的时候会弹窗cmd窗口:为了不弹窗口可以在设置选项 run as 设置为NT AUTHORIT ...
- Windows 任务计划程序(task scheduler)介绍
一.入口 任务计划程序在windows绝大多数版本都是系统自带,可以通过一下入口找到 1.开始--(windows)管理工具 2.服务器管理器--工具(server版) 3.我的电脑(此电脑)--点击 ...
最新文章
- eclipse卸载插件小记
- unity服务器文件传输,Unity 3D简单C#文件发送到FPT服务器示例脚本?
- 计算机2级模拟1答案,全国计算机2级MSOffice模拟考试1答案.doc
- 个人认为不错的句子(part2)--计算机是一种工具,但是如果没有绝对精确的指令,计算机也将一无是处
- android 自定义帧动画,Android 自定义方式实现帧动画效果
- python:软件目录结构规范
- python的datetime函数_Python连载8-datetime包函数介绍
- 决定你人生命运的10年,你做了什么?
- IIS的Windows集成身份验证总结
- Java编程的逻辑 (43) - 剖析TreeMap
- 321电商学院 与华中师大联手 - 2014-10-22
- 过半博士后考虑退出原领域,Nature呼吁不能因疫情失去科学的下一代
- python中的__init__ 、__new__、__call__等内置函数的剖析
- 哈理工oj 1006 River Hopscotch
- 一文打尽PHP代码加密方式
- iphone设置邮箱设置_如何使用iPhone设置Chromecast
- mysql数据库怎么该用户名和密码_如何修改MySql数据库的用户名和密码?
- 以太坊智能合约项目开发——Web3.py库安装及错误解决方案
- 传智播客与英特尔结成合作伙伴,共同推动软件技术进步
- D3D初学入门一(配置开发环境及绘制D3D窗口)
热门文章
- oracle varchar2转date_Oracle基础包之三 DBMS_PIPE
- 搭建可视化网页的software package_网页制作与网站搭建步骤教程
- python从入门到精通视频百度云资源_python从入门到精通视频(全60集)声音修复版...
- 网络营销外包——网络营销外包专员如何系统化梳理网站优化方法
- ruby网站部署到服务器,入门知识: 把代码部署到服务器, SSH
- 大数据之父_大新闻!Python 之父重新出山,加入微软开发部
- java面试浦发_记一次凉凉的浦发面试
- itunes未能连接到iphone_FonePaw iPhone Data Recovery mac版(iphone数据恢复工具)
- Android 10 中有关限制非 SDK 接口的更新
- Wireshark筛选常用命令