2012-11-19 91 views
0

我有一個R腳本,我需要在我的PHP頁面上執行。這裏是我的代碼執行命令在php不工作

exec("Rscript D:/webs/popdyn/SingleSpeciesLWR_2.r D:/webs/popdyn/hello.csv none"); 

我在這裏有2個參數,第一是我的csv文件,第二是沒有。當我在cmd中執行此操作時效果很好,但在PHP中不起作用。

+0

給出'Rscript'的完整路徑。 PHP可能無法在自己的PATH環境中找到它。 –

+0

他們是否需要反斜槓才能正常工作? 'D:\ webs \ popdyn ....' – SenorAmor

+0

檢查PATH中的權限和'Rscript' –

回答

1

這很可能是一個PATH問題。檢查Rscript.exe是否位於系統環境的PATH中,而不是您的本地用戶環境。

原因:當PHP運行exec時,它運行的是加載應用程序用戶的環境(可能是IIS,Apache或PHP,具體取決於您的設置)。您可以找出哪個用戶並將該路徑添加到該用戶,或者將路徑添加到系統環境。您可以通過控制面板(不是命令行 - 僅添加到本地!)來完成此操作。

或者,在exec()中指定Rscript的完整路徑。

+0

出於某種原因,在我的本地計算機上工作正常。然後我嘗試了與其他計算機相同的設置,但是php沒有執行R腳本。 – kimbebot