2013-07-04 42 views
1

在運行從控制檯一個python腳本,Python的打印一些行 例如:..其中system()在PHP中輸出python的輸出?

hello, 
World. 
... 
... 

對於使用PHP網頁上顯示,我已經試過..

exec("sudo -u username python temp.py >> logdata.log") 

和打印logdata。登錄。但是,我在網頁上輸出亂碼。 我發現這是刷新數據的問題。

我已閱讀系統()命令,同時使用谷歌搜索,它執行外部命令並打印輸出。而且它也會在發生時刷新輸出。所以我試過..

system("sudo -u username Python temp.py") 

我想知道它在哪裏打印輸出。

+1

要輸出語句,像調試語句,從Python代碼,我強烈建議使用Python的'logging'模塊。 – Alex

回答

0

你爲什麼不使用popen。

os.popen('sudo -u username Python temp.py').read() 

或子這甚至更好: -

import subprocess 
proc = subprocess.Popen('sudo -u username Python temp.py', stdout=subprocess.PIPE, shell=True) 
(out, err) = proc.communicate() 
print "program output:", out 
+0

我想從PHP運行python腳本。你指着做另一個腳本,然後從PHP調用它? – vnr1992

+0

是的,你可以做到這一點。你只需要注入這一行 - exec(「python ../xyz/abc.py」,$ output); –