说明
1、创建一个PHP示例文件;然后输入“ignore_user_abort();”。
2、通过“do{$fp = fopen('test.php','a')...}while(true)...”方法实现任务自动执行即可。
关于PHP代码如何自动执行,我们通常做定时任务需要做到代码自动执行,往往会借助系统来实现,例如linux的crontab或者windows的定时计划等等,现在分享一个纯代码实现的自动执行。
下面是用到的一窜PHP的执行代码,效率不是很好,但是能保持任务自动执行。
1
2
3
4
5
6
7
8
9
10
11
|
ignore_user_abort();
// 即使client 断开(如关闭浏览器),PHP 脚本也可以继续执行。
set_time_limit(0);
$interval = 60*5;
do {
$fp = fopen ( 'test.php' , 'a' );
fwrite( $fp , 'rn' . date ( 'Y-m-d H:i:s' ,time()). 'rn' );
fclose( $fp );
sleep( $interval );
} while (true)
echo 'OK' ;
|
实例扩展:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
ignore_user_abort(true); //客户端断开时忽略脚本中止(允许脚本一直执行)
set_time_limit(0); //设置脚本最长执行时间,0不限制
do {
$handle = fopen ( 'auto.txt' , 'w' );
if ( $fp )
{
$text = '你好\n\r' ;
$count = 0;
for ( $i =1; $i <10; $i ++)
{
if (! $c = fwrite( $handle , '第' . $i . '行:' . $text )) //返回写入字符数,失败时返回false
{
echo '第' . $i . '次的写入失败!' ;
}
$count += $c ;
}
}
fclose( $handle );
sleep(60); //延缓60秒执行
} while (true);
|
到此这篇关于php实现自运行的实例详解的文章就介绍到这了,更多相关php实现自运行的方法内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/php/jiaocheng/31627.html