[英]Executing and get pid a background process in PHP on Windows
我在Windows apache服務器的后台啟動了一個進程。
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"));
?>
那時,我想得到哪個php -f test.php
pid。 當我啟動index.php時,我可以在tasklist
命令行的輸出中看到新的php.exe
進程。 我怎樣才能獲得這個后台進程的pid。
謝謝。
這將在使用wmic
執行任務后輸出ProcessID
。 然后,您可以將其存儲在會話或cookie中以在頁面之間傳遞。
$cmd = 'wmic process call create "C:/xampp/php/php.exe -f /path/to/htdocs/test.php" | find "ProcessId"';
$handle = popen("start /B ". $cmd, "r");
$read = fread($handle, 200); //Read the output
echo $read; //Store the info
pclose($handle); //Close
產量
ProcessId = 1000
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.