『壹』 如何用php運行批處理<.bat>文件或者結束伺服器進程
可以用system()、exec()、passthru()
string system ( string command [, int &return_var] )
string exec ( string command [, array &output [, int &return_var]] )
void passthru ( string command [, int &return_var] )
沒錯啊,比如你要在用戶訪問1.php的時候執行伺服器上的 c:\a.bat 你可以在1.php裡面這么寫
<?php
exec("c:\\a.bat");
?>
『貳』 php在執行bat腳本時,一直阻塞,如何解決
雖然你已經問了很久了 。今天我也碰到這個問題了。
發現是session死鎖造成的 。
你可以在執行bat腳本的時候吧session關閉
session_write_close();
這樣就不會阻塞下次請求了。不過如果你想執行完寫入session那就不行了
『叄』 win2003 Apache+php環境下php執行bat文件不成功。
直接在命令行下執行 xxx.exe argument1 argument2可以成功。
將xxx.exe %1 %2寫在bat文件中,然後在命令行下執行mybat.bat argument1 argument2可以成功。
但是 在php中
$cmd = 'c:\mybat.bat argument1 argument2';
$res = system('cmd /C '.$cmd,$retval);
echo $res." return: ".$retval;
這樣執行不成功的。