Windowsのapacheサーバーでバックグラウンドでプロセスを開始しました。この次WindowsでPHPでバックグラウンドプロセスを実行して取得する
のindex.php:この次
<?php
$cmd = "C:/xampp/php/php.exe -f test.php";
pclose(popen("start /B ". $cmd, "r"));
echo "OK";
?>
test.phpを:
<?php
sleep(5);
file_put_contents("1.txt", date("Y-m-d H:i:s"));
?>
そのときは、私は、PID php -f test.php
を取得したいです。 index.phpを起動すると、新しいphp.exe
プロセスがtasklist
コマンドラインの出力に表示されます。 このバックグラウンドプロセスでpidを取得するにはどうすればよいですか。
ありがとうございました。
'$ PID = getmypid();' http://php.net/manual/en/function.getmypid.php留意してくださいしかし警告:**警告プロセスIDはユニークではないため、弱いエントロピー源です。セキュリティに依存する状況では、pidに頼らないことをおすすめします。** – icecub
ありがとうございました。それはhttpd.exeのPIDを返します。私はphp.exeのPIDを取得したい。 –
正確に何をしているのかわかりませんが、これはCLIコマンドであることに注意してください。これは、ブラウザで実行すると機能しません。 – icecub