[PHP-users 30430] Windowsでバックグラウンド実行

Hayashi Taro forml @ hotmail.co.jp
2006年 9月 27日 (水) 10:42:42 JST


初めまして。林と申します。

Windows環境において、バックグラウンドでバッチとして
phpを実行するための手段を探しております。

unix環境では、
$cmd = "/usr/local/bin/php xxx.php >> xxx.log 2>&1 &";
shell_exec($cmd);

てな感じで実現できますが、これをwindows環境で実現したいのです。

ネット等で調べ、つくったサンプルは以下です。
http://localhost/aaa.php を実行すると、
sleep(10) が終わるのを待ってから、ブラウザに"OK"が
表示されます(待たずに"OK"を表示させたい)。

環境は以下のとおりです。
OS: Windows Server 2003
Apache: 2.0.59
PHP: 5.1.6

よろしくお願い致します。

=========================================
aaa.php (bbb.batを起動)
=========================================
<?php
$cmd = '"C:\Program Files\Apache Group\Apache2\htdocs\bbb.bat" 2>&1 &';
shell_exec($cmd);
echo "OK!";
?>


=========================================
bbb.bat (ccc.phpを呼び出すバッチ)
=========================================
cmd.exe /c start c:\php\php.exe "C:\Program Files\Apache 
Group\Apache2\htdocs\ccc.php"


=========================================
ccc.php
=========================================
<?php
sleep(10);
echo "hello!";
?>

_________________________________________________________________
Windows Live スペースでブログを楽しもう! http://g.msn.co.jp/jppr/79 



PHP-users メーリングリストの案内