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 '<pre>';
34 print_r(get_headers('https://www.jb51.net'));
您可能感兴趣的文章:
- php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
- 使用php get_headers 判断URL是否有效的解决办法
- php中get_headers函数的作用及用法的详细介绍
- PHP提示Cannot modify header information - headers already sent by解决方法
- PHP错误Warning: Cannot modify header information - headers already sent by解决方法
- PHP使用get_headers函数判断远程文件是否存在的方法
- PHP实现的带超时功能get_headers函数
- PHP getallheaders无法获取自定义头(headers)的问题