2010-05-03 37 views
0

我在我的服務器上有一個名爲leaf.exe的應用程序,它有兩個需要運行的參數,它們是:inputfileoutputfile,將如下例所示:在使用PHP的服務器上執行應用程序(啓用safe_mode)

pnote.exe input.pnt output.txt 

的可執行文件是在exec/,inputfile中是在upload/和OUTPUTFILE是上compiled/。但我需要的是一個PHP可以運行這樣的應用程序,那麼我想知道:

  • 我怎麼能做到這一點的服務器上有exec()殘疾,我不能打開它,因爲我不沒有特權去做?
  • 我怎麼能echo該程序的輸出?
+0

讓exec()被禁用真的會改變事情。這表示系統管理員故意要阻止你這樣做。 – Hober 2010-05-04 04:00:58

回答

2

有辦法做到這一點相當數量。這部分取決於您的可執行文件的行爲方式以及它們返回的內容。看看System Program Execution。霍伯建議exec(),這可能是對的。另一種可能性可能是passthru()

+1

是的,'passthru()'可能是真正的答案。正如'exec()'文檔所示:「如果您需要執行命令並將命令中的所有數據直接傳回,而不受任何干擾,請使用passthru()函數。」 – Hober 2010-05-03 22:03:56

相關問題