在Windows上用PHP执行并获取pid后台进程

我在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

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...