2012-02-28 109 views
0

我在Windows 7中使用xampp。如何在Windows中異步運行php腳本?

在我的理解中,以這種方式調用腳本應該異步運行php.exe,而不是等待腳本結束。

$run_cmd = "cmd c:/xampp/php/php.exe c:/xampp/htdocs/Gashash/batch_test.php"; 
$oExec = $WshShell->Run($run_cmd, 0, false); 
當然

$run_cmd = "cmd c:/xampp/php/php.exe c:/xampp/htdocs/Gashash/batch_test.php"; 
exec($run_cmd); 

根據需要,因爲它停止調用過程,直到batch_test.php端部執行exec()選項不起作用。

我試着在路徑中使用'\'和'\'以及'/'作爲斜線,但腳本不起作用!

有什麼建議嗎?

謝謝!

回答

2

ii已在上週回覆了3次,請先搜索。

$WshShell = new COM("WScript.Shell"); 
$run_cmd = "cmd c:/xampp/php/php.exe c:/xampp/htdocs/Gashash/batch_test.php"; 
$WshShell = $WshShell->Run($run_cmd, 0, false); 
+0

我確實看到了您的答案,但依然如此。不行...我現在複製粘貼它。 – Ted 2012-02-28 02:06:41

+0

會發生什麼?因爲這是我從來沒有遇到任何問題的'普遍'答案。 – 2012-02-28 02:09:35

+0

好吧,如果我將Run的0參數更改爲1,我將顯示cmd行並立即關閉。我的batch_test.php腳本應該寫入日誌作爲測試。但日誌是空的。如果我通過cmd手動執行相同的行(沒有cmd作爲開頭),它會正常運行,如果我添加cmd,它不會生效 – Ted 2012-02-28 02:13:45