关于php 定时执行的一些想法

本文介绍了一种使用PHP脚本实现定时任务的方法,包括通过sleep函数和死循环来定期执行特定任务,例如每5秒创建一个包含时间戳的文件。
关于php脚本定时执行无外乎3种方式
1、windows 的计划任务
2、linux的脚本程序
3、用web浏览器定时刷新

今天想到用sleep函数来实现php 自动定时执行。只要php能运行即可。
代码如下:
<?
if($_GET['ac']=='stop')
exit();
sleep(5);
$name=time();
$fp=fopen("$name.txt",'w');
fwrite($fp,time());
fclose($fp);
$fp = fsockopen('localhost', 80, $errno, $errmsg);
fputs($fp, "GET /test/time.php\r\n\r\n"); 
fclose($fp);
?>
在浏览器里执行一下http://localhost/test/time.php
则会在test 文件夹下每隔5秒自动创建一个以当前时间戳命名的txt文件,并写入当前时间戳
可以发现即使关闭了浏览器。这个脚本还是会每5秒执行一次。
这样就达到了定时执行的目的。

如果是要按时间点执行,比如每天 1点钟的时候执行。
那么也只需要小小修改一下也能够实现。
当然这只是一种解决思路,至于实际应用,还要再探索一番

还有一种实现方法:利用死循环,原理差不多
<?php
ignore_user_abort
(true);
set_time_limit(0);

while(
1){
$fp  fopen('time_task.txt',"a+");
$str date("Y-m-d h:i:s")."n";
fwrite($fp,$str);
fclose($fp);
sleep(1800);    //半小时执行一次
}
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值