我在Windowsapache服务器的后台启动了一个进程。index.php如下:test.php下面是:当时想获取pidwhichphp-ftest.php。当我启动index.php时,我可以在tasklist命令行的输出中看到新的php.exe进程。如何获取此后台进程的pid。谢谢。 最佳答案 这将在使用wmic执行任务后输出ProcessID。然后您可以将其存储在session或cookie中以在页面之间传递。$cmd='wmicprocesscallcreate"C:/xampp/php/php.exe-f/path/to
我偶然发现了一个我自己无法解释的现象。我正在使用popen执行php,然后以这种方式执行php脚本,然后使用pclose关闭它。到目前为止还好。我遇到了一些严重的麻烦,因为我使用它的脚本没有执行,而是在连续尝试3次之后我使zend-server崩溃了(没有页面会打开)。我发现这是因为我为php.exe使用了错误的目录。示例:if(pclose(popen("C:\wrongDir\php\php.exeC:\Zend\Apache2\htdocs\myApp\public\mytest.php57>C:\Logs\1\0\jobOut.log2>C:\Logs\1\0\jobErr.l
我正在运行linux并尝试执行以下操作:在当前目录运行ls(使用popen)将结果输出到缓冲区(使用来自管道描述符的fread)关闭管道(使用pclose)。一切正常(缓冲区已正确填充ls结果)但是当我检查时pclose()结果它返回-1并且errno设置为10(无子进程)。不知道为什么这正在发生,但我不能忽视它(除非对为什么会发生这种情况有合理的解释)。我的代码:FILE*lsoutput=NULL;lsoutput=popen("ls-ltr","r");if(readFromPipeOrFile(lsOutput,pSendBuf,pSendActualSize)==-1){pr