本文目錄一覽:
- 1、PHP能否自動定時執行某代碼
- 2、如何讓PHP自動運行 – PHP進階討論
- 3、如何讓windows系統自動執行指定的php文件
- 4、如何用php作Linux自動執行腳本
- 5、急!!php如何設置10秒後自動運行後面的代碼
- 6、如何用php作Linux自動執行腳本?
PHP能否自動定時執行某代碼
php是需要觸發執行的, 沒辦法長期保持執行着它, 即便你用sleep, 它仍然是需要你首先去點它一次, 它才會一直存在
方法是用計劃任務, 沒錯就是計劃任務, 無論windows/*nix都有計劃任務, 你可以把php放進計劃任務里, 用命令行方式執行php程序
事實上沒有任何可能性在0訪問的情況下讓php執行, 因為php自身就是服務器端腳本解釋工具, 服務器當然是有人訪問才工作才對, 樓主在反其道而行, 如果你希望用php執行桌面程序, 也不是沒有辦法,php官方就有這種工具, 但是和php的運行方式有太多不同,所以控制方式也都不同,嚴格的說,只是php的語法而已
對於提問者補充的補充:
ignore_user_abort(1);
set_time_limit(0);樓主要研究下這兩個
如何讓PHP自動運行 – PHP進階討論
原帖由
於
2008-7-3
15:41
發表
[i]若有管理權限一、Window系統下,做計劃任務?
?
例如?
???C:\\php5\\php.exe
-f??二、Linux系統下?
?
例如?
???/usr/local/php/bin/php
-f?
?若無管理權限,只有虛擬空間你至少要訪問一個URL來啟動
…
三樓說得很全面,特別是第三種方法非常好,我僅在discuz的程序里見過。第二種方法補充一下,完整的是用crontab來定時執行/usr/local/php/bin/php
-q
如何讓windows系統自動執行指定的php文件
在程序開發過程中,我們可能有很多情況下需要自動的執行某一段代碼從而使程序自動更新某模塊的狀態等,下面說明了如何使系統自動執行php代碼的方法。1.打開控制面板-》任務計劃2.雙擊添加任務計劃點擊「瀏覽」,找到php解釋器所在的位置,並選擇php.exe給自己添加的任務起一個名字,隨便選一個選項,點擊下一步輸入系統用戶名和密碼,一般用戶名是默認輸入好的輸入完成後點擊下一步,彈出完成提示框,勾選複選框打開任務高級設置對話框,編輯「運行」欄,在後面加上你要運行的php文件,設置運行時間即可。
如何用php作Linux自動執行腳本
Linux中crontab是實現定時執行的指令,利用這個指令我們就可以定時執行某一個php文件,從而實現用PHP做Linux自動執行腳本。
如何用PHP作Linux自動執行腳本?
在安裝PHP的時候,會產生一個可執行文件,文件名為php.將它 copy 到 /usr/local/bin 下.在終端方式執行php程序:
php -q onlinnum.php
PHP 原本是應用在網頁應用的﹐因此它會送出 HTML 的HEADER﹐但是在此我們是要將 PHP 用作 Shell Script﹐”-q” 就是表示不要送 出 HEADER 的意思.你可以試試看不加上 -q 的顯示結果。此時你已經可以在終端方式下執行PHP 代碼了。 linux命令:cron daemon
這是一個系統中常駐的服務,功能在於執行例行性的工作,如每天一次或每月一 次檢查磁盤。cron daemon 會在每分鐘檢查一次排定的工作表(crontab),看看是否有要執行的指令,所有的輸出會以mail寄給用戶。
設置 crontab
命令:crontab -e
該命令呼叫vi編輯器來編輯執行的清單。例如
0 0 1,15 * * fsck /home
1 * * * * /home/myhome/printhello
每一行代表一項排定的工作,在指令前為排定的時間,總共有5個欄位,以空格間隔,由左到右依序如下:
————————–
分鐘 從00到 99
點鐘 從0到 24
日 從01到31
月 從01到12
星期 從01到07,代表星期一到星期日
*號表示”每” ,如每天執行,就在第三欄填*號
————————–
所以上例的兩項工作是:
每月1號和15號檢查/home 磁盤
每小時的第一分執行 /home/myhome/printhello 這個文件
查看crontab:crontab -l
刪除crontab:crontab -r
我們就知道該怎麼利用PHP和crontab命令作Linux自動執行腳本了。
還需要注意什麼問題?
如果php中有使用數據庫,如oracle等,執行腳本中還需export Oracle的環境設置。因為cron下的腳本執行的用戶都是在沒登陸狀態下執行的,少了很多系統里設置的環境變量的值,在連接數據庫的時候會出問題。
急!!php如何設置10秒後自動運行後面的代碼
用js 會更簡單一些
script
//定時器 異步運行
function hello(){
alert(“hello”);
}
//使用方法名字執行方法
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout(“hello()”,3000);//使用字符串執行方法
window.clearTimeout(t1);//去掉定時器
/script
你可以試試這段代碼
如何用php作Linux自動執行腳本?
嵌入式
linux
如何以root身份自動登錄
並開機自動執行腳本文件
下面操作步驟記錄如下:
要設置自啟動程序需要解決兩個問題:1、系統自動登錄;2、自動執行腳本,
1)系統自動登錄
(1)修改/etc/inittab
在inittab中,有如下配置
1:2345:respawn:/sbin/agetty
tty1
9600
2:2345:respawn:/sbin/agetty
tty2
9600
3:2345:respawn:/sbin/agetty
tty3
9600
4:2345:respawn:/sbin/agetty
tty4
9600
5:2345:respawn:/sbin/agetty
tty5
9600
6:2345:respawn:/sbin/agetty
tty6
9600
表示系統可以有六個控制台,可以用alt+(f1~f6)來切換。而/sbin/agetty就是一個登陸驗證程序,執行它,會提示用戶輸入用戶名和密碼,然後啟動一個指定的shell(在passwd文件中指定的)。
所以,我們只需將其修改為不執行agettty,而是執行自己編寫的一個腳本,就可以跳過用戶名和密碼的輸入。修改如下:
1:2345:respawn:/root/logintest
tty1
9600
這裡我在/root/下放了一個測試腳本,這樣系統啟動時就會執行那個腳本,腳本內容:
#!/bin/sh
/bin/login
-f
root
腳本其實就是執行了一個root用戶的登陸而已。
2)自動執行程序
方法有兩種,一種是將要執行的代碼放到1)中的/root/logintest的後面;
另一種是將要執行的代碼放到/etc/profile文件的後面即可。
原創文章,作者:ZKQA,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/138950.html