海运的博客

PHP异步执行

发布时间:December 31, 2013 // 分类:PHP // No Comments

<?php
   $start = microtime(true); 
   $fp=fsockopen('localhost',80,$errno,$errstr,5);
   if(!$fp){
      echo "$errstr ($errno)<br />\n";
   }
   $head = "GET /get.php HTTP/1.1 \r\n";
   $head .= "Host: localhost \r\n";
   $head .= "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0 \r\n";
   $head .= "Connection: Close \r\n\r\n";
   //发送请求
   fputs($fp,$head);
   /* 忽略结果
   while(!feof($fp)) {
      echo fgets($fp,128);
   }
   */
   fclose($fp);
   header("Content-Type: text/html;charset=utf-8");
   $end = microtime(true); 
   echo "脚本执行时间".($end - $start).'<br>';  
?>

异步执行的代码:

<?php
   ignore_user_abort(1); //由于异步请求后会立即断开连接,默认会终止脚本,忽略掉
   set_time_limit(0); //取消脚本执行延时上限
   for ($i = 1; $i < 10; $i++)
   {
      $ch = curl_init(); 
      curl_setopt($ch, CURLOPT_URL, "https://www.haiyun.me/?$i");
      curl_setopt($ch, CURLOPT_REFERER, "http://www.test.com");
      curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0");
      curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,3);
      curl_setopt($ch,CURLOPT_TIMEOUT,3);
      curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
      curl_exec($ch);
   }
?>

标签:none

评论已关闭

分类
最新文章
最近回复
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...
  • 孤狼: 擦。。。。apcupsd会失联 nut在冲到到100的时候会ONBATT进入关机状态,我想想办...
  • 海运: 网络,找到相应的url编辑重发请求,firefox有此功能,其它未知。
  • knetxp: 用浏览器F12网络拦截或监听后编辑重发请求,修改url中的set为set_super,将POS...
  • Albert: 啊啊啊啊啊啊啊啊啊 我太激动了,终于好了英文区搜索了半天,翻遍了 pve 论坛没找到好方法,博...