php脚本启动,有没有办法启动一个PHP脚本并获得状态?
是否可以使用js在Web服務器上在后臺啟動php腳本并讓它運行,即使您更改頁面或根本不訪問該站點,如果您第二次調用該php腳本也可以獲取當前狀態?
這個php腳本將處理數小時的數據,每個循環的睡眠時間為X秒/分鐘.如果我之前問的是可能的,如果php僅在腳本結束時才生成輸出,我怎么能從中獲得“ echos”?
也許這不是PHP的工作?
謝謝
編輯:在帶有Apache的Windows機器上
解決方法:
在Windows中,它與UNIX沒有太大區別.
首先,您需要使用運行循環創建一個PHP腳本.例如,看一下:http://code.google.com/p/php-apns/.這是一個PHP“守護程序”:主腳本PushMonitor.php可以永久運行,因為它具有無限循環.它定期輪詢隊列,然后執行操作,然后等待.真的很簡單!
在您的情況下,問題是您要從PHP腳本啟動“守護程序”.
您可能需要看一下:http://robert.accettura.com/blog/2006/09/14/asynchronous-processing-with-php/(第一個示例代碼).您將執行類似launchBackgroundProcess(‘php myscript.php’)的操作.
請注意,在代碼上有“ start / b”命令(對于UNIX,在命令末尾有“&”).這很重要,因為否則,當網頁的PHP腳本終止時,您的進程將被殺死(子進程在父進程死后就死亡!).
另外,請記住,“ php”可執行文件(cli)必須在您的路徑中(以便您可以從命令行執行“ php”).
由于啟動后臺進程的頁面的PHP腳本將終止,因此您無法以簡單的方式直接捕獲“回聲”.我的建議是將所有輸出寫入文件(或數據庫等),然后在必要時從該源讀取內容.
因此,您將使用file_put_contents()等代替“ echo”.
標簽:background,javascript,php
來源: https://codeday.me/bug/20191102/1989934.html
總結
以上是生活随笔為你收集整理的php脚本启动,有没有办法启动一个PHP脚本并获得状态?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云服务器 文件服务,云服务器文件服务
- 下一篇: windows 反弹shell_容器内反