时间:2021-07-01 10:21:17 帮助过:2人阅读
本文实例分析了PHP文件的自动运行方法。分享给大家供大家参考,具体如下:
这里分析两种方法:
第一种方法:
a.php文件内容 如下:
<?php ini_set("error_log", "c:\php\php_error.log"); error_log("a.php is execute----------",0); ignore_user_abort(); // 后台无阻断运行 set_time_limit(0); // 一直给我运行 $zhoz_execute_time = 30; // 运行时间seconds,这里设置成一分钟跑一次。 do { // 这里想执行什么都可以写了 error_log("a is do !!!!----------",0); sleep($zhoz_execute_time); // 按指定轨道时间运行 } while (true); ?>
但这里有个缺点,需要先运行一下这个PHP文件,如通过url运行:http://www.gxlcms.com/
这里只要执行一次就可以了,然后关闭页面。
另外,当Apache/IIS重启后,这个脚本就不会执行了。
为此,我又想到了另外一个方法:
在cmd下运行:
php-win.exe -c "c:\php\php.ini" -f C:\Apache2.2\htdocs\a.php
(这里也只要运行一次,运行多了时间会缩短运行的。)
这样的话,即使怎么重启Apache/IIS这个脚本仍然会运行的。
还有缺点:重启机器或杀死进程php-win.exe,当然它就不能跑了……
这个解决办法,可以添加启动项里作成bat应该是可以完美解决!
第二种方法:
b.php内容:
<?php $fp=fopen("c:\\test\\a.txt","a+"); fwrite($fp,"测试\r\n"); fclose($fp); ?>
然后写一个bat文件,在其中写入:
c:\php\php -c c:\php\php.ini -f c:\Apache2.2\htdocs\b.php
保存
然后使用那个at 命令将其加入的计划任务中