我試圖讓PHP調用一個批處理文件,它將採用RTF文件並使用OpenOffice宏將其轉換爲PDF格式。我已經在命令行上測試了批處理文件,它工作正常,但我沒有任何運氣調用並使用PHP中的同一批處理文件。使用PHP exec命令執行批處理文件的問題
我的機器操作系統是XP專業SP 3.我運行IIS 6和PHP版本5.2.9。 我已授予c:\ windows \ system32 \ cmd.exe上的Internet用戶執行權限。 我指定了正在執行的批處理文件的完整路徑以及要轉換的RTF文件的完整路徑。
的PHP是這樣的,其中的$ arg是RTF轉換:
$arg = "C:\\web_root\\whatever\\tempOutput.rtf";
$command = "c:\\windows\\system32\\cmd.exe /c c:\\web_root\\whatever\\convert.bat $arg";
然後一個try-catch裏面我叫exec命令:
exec("$command 2>&1 && exit", $ret, $err);
我贊同後的結果漁獲:
echo "ret: ";
print_r ($ret);
print "<br>";
echo "err is ";
echo $err;
print "<br>";
echo "DONE!";
這是我所看到的:
ret: Array ()
err is 0
DONE!
RTF文件沒有被轉換,我沒有看到錯誤。關於我可以嘗試下一步的任何想法?謝謝!!!
你能列出你的批處理文件嗎? – cdonner 2009-06-02 17:28:04