2010-06-27 63 views
0

我從我的php5腳本啓動一個Linux控制檯應用程序,它開始確定,但隨後termintates。我嘗試過使用system(),shell_exec,並嘗試開始作爲後臺進程,但無濟於事,然後退出。從php腳本運行控制檯應用程序

我想要實現的是從遠程瀏覽器啓動一個控制檯應用程序使用php5腳本,然後它應該保持運行(就像它會如果我從bash shell啓動它),然後我想發送命令(從bash shell將它作爲鍵盤筆畫)從另一組php5腳本傳送到控制檯應用程序。希望它清楚我想要做什麼。

如果任何人都可以提供關於這樣做的最佳方式的一些信息,因爲我認爲我可能有一些根本性的錯誤。 我有一個運行Apache的Debian Lenny框。控制檯應用程序只是一個簡單的程序,打印到標準輸出並從標準輸入讀取。

回答

0

您如何期望向此應用發送輸入?它在哪裏監聽輸入?

它只是可能僅支持交互式使用,並因此退出。或者,甚至更簡單,它可能會終止,因爲它看起來沒有輸入(沒有任何輸入或某些文件沒有輸入),並且因爲它沒有連接到交互式shell,所以它沒有任何關係。等待來自用戶的輸入沒有辦法與應用程序交互沒有意義。

+0

嗨,我想我正在尋找一種方式寫入另一個過程(在這種情況下,控制檯應用程序)從我的PHP腳本stdin 謝謝 – tech74 2010-06-27 22:07:24

0

對於每個請求,PHP都會啓動,編譯腳本並執行它。執行後,腳本存在。當腳本退出時,它正在使用的所有資源(包括文件句柄,數據庫句柄和到其他程序的管道)都將終止。

你將需要找到另一種方式來保持你的程序打開並讓PHP與它通信。否則,對腳本的每個請求都會打開該程序的新副本,然後在PHP腳本完成時都會退出。

不幸的是,不知道程序是什麼,很難提供關於如何去做這件事的建議。

相關問題