Windows下Apache能否让一个PHP文件每隔几秒执行一次
请允许我问这个很白痴的问题,不过我琢磨了很长时间也没想到一个很好的解决办法。
背景是这样的:我需要一段PHP代码去定期的对数据库的数据进行操作,并把结果保存起来。假如只是在用户请求的时候去执行这段代码的话,用户的响应时间会很长,用户体验极差。所以我希望能有一个程序专门来执行这段代码。开始的时候想到用windows的计划任务来解决,但是由于执行的频率非常高,用计划任务显然不合适。
所以希望高人指点,若能给个简单的例子就再好不过了,谢谢!
------解决方案--------------------
好像只能用计划任务,或者用PHP来执行
- PHP code
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行. set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去 $interval=60*30;// 每隔半小时运行 do{ //这里是你要执行的代码 sleep($interval);// 等待5分钟 }while(true); <br><font color="#e78608">------解决方案--------------------</font><br>linux有cron,很好使。<br><br>windows下如果mysql5.1以上,有Event Scheduler,不过没用过,LZ自己查下资料<br> <br><font color="#e78608">------解决方案--------------------</font><br>多种方法:<br>1.用sleep()函数实现类似linux contab定时执行的功能。<br><br>2.linux系统直接在crontab中添加定时任务。 <br><font color="#e78608">------解决方案--------------------</font><br>你可以做一个包含文件,同解一楼,然后在需要的地方包含进这个文件,既省去了不用的时候占用资源,而且随着调用而运行,多好啊,关闭网页之后还可以继续运行。只要任何动作都可触发就可以了吧。用load触发比较好。 <br><font color="#e78608">------解决方案--------------------</font><br>使用js,使网页定时刷新,在网页内读取数据库。只要网页打开,就可以一直运行。而且占用资源少 <br><font color="#e78608">------解决方案--------------------</font><br>用js刷新一个页面。<br><br>设置浏览器的主页为这个页面。<br><br>把浏览器加到windows的开机启动里。<br><br><br><br> <br><font color="#e78608">------解决方案--------------------</font><br>写测试脚本:<br><?php <br /><br>ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.<br>set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去<br>$interval=30;// 每隔一定时间运行<br>do{<br><br> //这里是你要执行的代码 <br> $msg=date("Y-m-d H:i:s") ." -执行了~ \n";<br> file_put_contents("log.log",$msg,FILE_APPEND);<br> <br> sleep($interval);// 等待5分钟<br>}while(true);<br><br><br>然后直接就可以在命令行里边执行 <br>c:\php5\php.exe test.php<br><br>可以把这个加入开始开机运行 或加入到系统服务中,就可以自动运行了 <div class="clear"> </div>

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3汉化版
中文版,非常好用

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。