溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

PHP文件如何實(shí)現(xiàn)自動運(yùn)行

發(fā)布時間:2021-08-31 13:50:46 來源:億速云 閱讀:280 作者:小新 欄目:開發(fā)技術(shù)

這篇文章給大家分享的是有關(guān)PHP文件如何實(shí)現(xiàn)自動運(yùn)行的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

具體如下:

這里分析兩種方法:

第一種方法:

a.php文件內(nèi)容 如下:

<?php 
 ini_set("error_log", "c:\php\php_error.log"); 
 error_log("a.php is execute----------",0); 
 ignore_user_abort(); // 后臺無阻斷運(yùn)行 
 set_time_limit(0); // 一直給我運(yùn)行 
 $zhoz_execute_time = 30; // 運(yùn)行時間seconds,這里設(shè)置成一分鐘跑一次。 
 do { 
  // 這里想執(zhí)行什么都可以寫了 
  error_log("a is do !!!!----------",0); 
  sleep($zhoz_execute_time); // 按指定軌道時間運(yùn)行 
 } while (true); 
?>

但這里有個缺點(diǎn),需要先運(yùn)行一下這個PHP文件,如通過url運(yùn)行:http://www.zhoz.com/zhoz.php

這里只要執(zhí)行一次就可以了,然后關(guān)閉頁面。

另外,當(dāng)Apache/IIS重啟后,這個腳本就不會執(zhí)行了。

為此,我又想到了另外一個方法:

在cmd下運(yùn)行:

php-win.exe -c "c:\php\php.ini" -f C:\Apache2.2\htdocs\a.php

(這里也只要運(yùn)行一次,運(yùn)行多了時間會縮短運(yùn)行的。)

這樣的話,即使怎么重啟Apache/IIS這個腳本仍然會運(yùn)行的。
還有缺點(diǎn):重啟機(jī)器或殺死進(jìn)程php-win.exe,當(dāng)然它就不能跑了……
這個解決辦法,可以添加啟動項(xiàng)里作成bat應(yīng)該是可以完美解決!

第二種方法:

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 命令將其加入的計(jì)劃任務(wù)中

感謝各位的閱讀!關(guān)于“PHP文件如何實(shí)現(xiàn)自動運(yùn)行”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI