2012-02-28 16 views
0

私はxamppをWindows 7で使用しています。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

先週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

+0

どうなりますか?それは私が決して問題を抱えたことのない「普遍的な」答えです。 –

+0

でも、Runの0パラメータを1に変更すると、cmd行が表示され、すぐに閉じることができます。私のbatch_test.phpスクリプトはテストとして何かをログに書くべきです。しかしログは空です。私がcmdを手動で追加すると、最初にcmdを使わずに同じ行を実行すると、それは正常に実行されます。 – Ted

関連する問題