php 模拟get_headers函数的代码示例

前端之家收集整理的这篇文章主要介绍了php 模拟get_headers函数的代码示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

代码如下:
PHP

02 if(!function_exists('get_headers')){

03 function get_headers($url,$format=0){

04 $url=parse_url($url);

05 $end="\r\n\r\n";

06 $fp=fsockopen($url['host'],(empty($url['port'])?80:$url['port']),$errno,$errstr,30);

07 if($fp){

08 $out="GET / HTTP/1.1\r\n";

09 $out.="Host: ".$url['host']."\r\n";

10 $out.="Connection: Close\r\n\r\n";

11 $var='';

12 fwrite($fp,$out);

13 while(!feof($fp)){

14 $var.=fgets($fp,1280);

15 if(strpos($var,$end))

16 break;

17 }

18 fclose($fp);

19 $var=preg_replace("/\r\n\r\n.*\$/",'',$var);

20 $var=explode("\r\n",$var);

21 if($format){

22 foreach($var as $i){

23 if(preg_match('/^([a-zA-Z -]+): +(.*)$/',$i,$parts))

24 $v[$parts[1]]=$parts[2];

25 }

26 return $v;

27 }else{

28 return $var;

29 }

30 }

31 }

32 }

33 echo '

'; 

34 print_r(get_headers('//www.jb51.cc'));

猜你在找的PHP相关文章