PHP web开发HTTP协议中的KeepAlive
ts($fp))) != “” ) { $header.=$line; if(strstr($line,”Content-Length:”)) { list($cl,$len)=explode(” “,$line); } if(strstr($line,”Connection: close”)) { $close=true; } } if($len < 0) { echo “ohttp_get must cope with Content-Length header!\n”; return -1; } $body=fread($fp,$len); if($close) fclose($fp); return $rcode; } function phttp_get($host,$port,$query,&$body) { $fp=pfsockopen($host,$port,$errno,$errstr,1); if(!$fp) { var_dump($errno,$errstr); return -1; } $out = “GET ${query} HTTP/1.1\r\n”; $out.= “Host: ${host}\r\n”; $out.= “Connection: Keep-Alive\r\n”; $out.= “\r\n”; fwrite($fp,$out); $line=trim(fgets($fp)); $header.=$line; list($proto,$rcode,$result)=explode(” “,$line); $len=-1; while( ($line=trim(fgets($fp))) != “” ) { $header.=$line; if(strstr($line,”Content-Length:”)) { list($cl,$len)=explode(” “,$line); } if(strstr($line,”Connection: close”)) { $close=true; } } if($len < 0) { echo “phttp_get must cope with Content-Length header!\n”; return -1; } $body=fread($fp,$len); if($close) fclose($fp); return $rcode; } $time1=microtime(true); echo “phttp_get: “.($time3-$time2).”\n”; |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |