PHP编程中,由于代码处理数据量太大,单个进程处理需要很长的时间,所以需要用到并发进行处理。
  popen命令说明:打开一个指向进程的管道,该进程由派生指定的 command 命令执行而产生。
  使用popen结合SHELL命令也可以实现多进程并发编程。
  下面开始代码实现,文件a.php:
 

PHP Code复制内容到剪贴板
  1.   <?php   
  2.   for ($i=0;$i<10;$i++){   
  3.   file_put_contents('./t.txt',$i,FILE_APPEND);   
  4.   sleep(1);   
  5.   }   
  6.   ?>  


  程序b.php:

折叠PHP Code复制内容到剪贴板
  1.   <?php   
  2.   echo "start curl\n";   
  3.   //popen函数参数1执行php命令(PHP的路径 需要执行的php命令文件或其他shell命令),参数2以只读方式执行命令   
  4.   $out = popen("/usr/local/bin/php ./a.php""r");   
  5.   echo "test\n";   
  6.   pclose($out);   
  7.   echo "end curl\n";   
  8.   ?>  


  运行b.php:

  我们发现test立即被输出,而a.php仍然在执行中。

  10秒后,a.php执行完毕,整个程序执行结束。t.text文件中,已被写入内容。
  在网站开发中,可以先行输出html部分,等待程序加载完成,发送ajax请求,再去运行一些额外代码,或获取数据,当然,js安全性,也希望每个开发人员认真考虑,适合自己的代码才是好代码。