本文實例分析了PHP文件的自動運行方法。分享給大家供大家參考,具體如下:
這里分析兩種方法:
第一種方法:
a.php文件內(nèi)容 如下:
<?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,這里設(shè)置成一分鐘跑一次。
do {
// 這里想執(zhí)行什么都可以寫了
error_log("a is do !!!!----------",0);
sleep($zhoz_execute_time); // 按指定軌道時間運行
} while (true);
?>
但這里有個缺點,需要先運行一下這個PHP文件,如通過url運行:http://www.zhoz.com/zhoz.php
這里只要執(zhí)行一次就可以了,然后關(guān)閉頁面。
另外,當Apache/IIS重啟后,這個腳本就不會執(zhí)行了。
為此,我又想到了另外一個方法:
在cmd下運行:
php-win.exe -c "c:\php\php.ini" -f C:\Apache2.2\htdocs\a.php
(這里也只要運行一次,運行多了時間會縮短運行的。)
這樣的話,即使怎么重啟Apache/IIS這個腳本仍然會運行的。
還有缺點:重啟機器或殺死進程php-win.exe,當然它就不能跑了……
這個解決辦法,可以添加啟動項里作成bat應該是可以完美解決!
第二種方法:
b.php內(nèi)容:
<?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 命令將其加入的計劃任務中
希望本文所述對大家PHP程序設(shè)計有所幫助。