志在指尖
用双手敲打未来

php计划任务(定时执行函数详解)

php计划任务

本次运用php完成计划任务主要运用了ignore_user_abort()set_time_limit(0)sleep()这三个函数。
详细的代码如下:
‘;
sleep($interval);//等待5s
}while(true);
//办法2—sleep守时履行
require_once’./curlClass.php’;//引入文件
$curl=newhttpCurl(‘www.phpernote.com’);//实例化
$stime=$curl->getmicrotime();
for($i=0;$i<=10;$i++){
echo’测试’.time().’
‘;
sleep($interval);//等待5s
}
ob_flush();
flush();
$etime=$curl->getmicrotime();
echo’
‘;
echoround(($etime-stime),4);//程序履行时间
在详细的完成过程中个人感觉PHP守时履行任务的功率并不高,主张关于守时履行任务的作业还是交给shell来做吧,相对来说,这个办法完成的太过牵强,而shell是专业级别的了。php

php定时执行函数详解

一、windows方案使命
1、写一个PHP程序,命名为test.php,内容如下所示
$fp=fopen(“test.txt”,”a+”);
fwrite($fp,date(“Y-m-dH:i:s”).”成功成功了!\n”);
fclose($fp);
?>
程序大胆地写,什么include\require尽管用,都没问题
2、新建Bat文件,命名为test.bat,内容如下所示:
1
D:\php\php.exe-qD:\website\test.php
3、建立WINDOWS方案使命:
开始–>控制面板–>使命方案–>添加使命方案
浏览文件夹挑选上面的bat文件
设置时间和密码(登陆WINDOWS的)
保存即可了。
4、over!能够右键方案使命点“运转”试试
二、linux的脚本完成
一、在Crontab中运用PHP履行脚本
就像在Crontab中调用一般的shell脚本相同(具体Crontab用法),运用PHP程序来调用PHP脚本。
每一小时履行myscript.php如下:
#crontab-e
00****/usr/local/bin/php/home/john/myscript.php
/usr/local/bin/php为PHP程序的途径。
二、在Crontab中运用URL履行脚本
假如你的PHP脚本能够通过URL触发,你能够运用lynx或curl或wget来装备你的Crontab。
下面的比如是运用Lynx文本浏览器拜访URL来每小时履行PHP脚本。Lynx文本浏览器默许运用对话方式打开URL。但是,像下面的,我在lynx命令行中运用-dump选项来把URL的输出转换来规范输出。
00****lynx-dumphttp:
//www.centos.bz/myscript.php
下面的比如是运用CURL拜访URL来每5分履行PHP脚本。Curl默许在规范输出显现输出。运用”curl-o”选项,你也能够把脚本的输出转储到临时文件。
*/5****/usr/bin/curl-otemp.txthttp:
//www.centos.bz/myscript.php
下面的比如是运用WGET拜访URL来每10分履行PHP脚本。-q选项表明安静形式。”-Otemp.txt”表明输出会发送到临时文件
*/10****/usr/bin/wget-q-Otemp.txthttp:
//www.centos.bz/myscript.php
三、PHP完成守时履行方案使命
运用php让浏览器改写需要解决几个问题
1、PHP脚本履行时间约束,默许的是30m解决办法:set_time_limit();或者修正PHP.ini设置max_execution_time时间(不引荐)
2、假如客户端浏览器封闭,程序可能就被逼停止,解决办法:ignore_user_abort即使封闭页面仍然正常履行
3、假如程序一向履行很有可能会耗费大量的资源,解决办法运用sleep运用程序休眠一会,然后在履行PHP守时履行的代码
ignore_user_abort();//关掉浏览器,PHP脚本也能够继续履行.
set_time_limit(3000);//通过set_time_limit(0)能够让程序无约束的履行下去
$interval=5;//每隔5s运转
//办法1–死循环
do{
echo’测验’.time().’
‘;
sleep($interval);//等候5s
}while(true);
//办法2—sleep守时履行
require_once’./curlClass.php’;//引入文件
$curl=newhttpCurl();//实例化
$stime=$curl->getmicrotime();
for($i=0;$i<=10;$i++){
echo’测验’.time().’
‘;
sleep($interval);//等候5s
}
ob_flush();
flush();
$etime=$curl->getmicrotime();
echo’
‘;
echoround(($etime-stime),4);//程序履行时间
测验的时候发现这个效率并不是很高

未经允许不得转载:IT技术网站 » php计划任务(定时执行函数详解)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载