php 模拟get_headers函数的代码示例
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('http://www.jb51.net'));
推荐阅读
-
PHP杂谈《重构-改善既有代码的设计》之重新组织你的函数_PHP教程
-
PHP删除Array数组里指定的key(完整版,已封装成函数,附测试代码)_PHP教程
-
示例讲解PHP函数preg_grep()的使用
-
用PHP代替JS玩转DOM的思路及示例代码_PHP
-
根据中文裁减字符串函数的php代码
-
php简单对象与数组的转换函数代码(php多层数组和对象的转换)_php技巧
-
php中的四舍五入函数代码(floor函数、ceil函数、round与intval),ceilintval
-
PHP操作文件类的函数代码(文件和文件夹创建,复制,移动和删除)
-
比较好用的PHP防注入漏洞过滤函数代码_PHP教程
-
php删除文件夹及其文件夹下所有文件的函数代码_PHP教程