php 模拟get_headers函数的代码示例

 更新时间:2013年04月27日 14:52:22   作者:  
本篇文章介绍了,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使用json_encode对变量json编码

    php使用json_encode对变量json编码

    这篇文章主要是说明 json_encode 使用时一个需要注意的细节,无论返回的是数组还是 json,都不代表这一定就是个错误的返回结果,当前端需要的数组时,数组就是正确的结果,反之亦然
    2014-04-04
  • thinkphp5.1框架模板赋值与变量输出示例

    thinkphp5.1框架模板赋值与变量输出示例

    这篇文章主要介绍了thinkphp5.1框架模板赋值与变量输出,结合实例形式分析了thinkphp5.1框架模板赋值与变量输出基本操作技巧及相关注意事项,需要的朋友可以参考下
    2020-05-05
  • 关于PHP隐藏入口文件问题

    关于PHP隐藏入口文件问题

    这篇文章主要介绍了关于PHP隐藏入口文件问题,大概分为两个步骤,每一步给大家介绍的都非常详细,需要的朋友参考下吧
    2018-03-03
  • cakephp打印sql语句的方法

    cakephp打印sql语句的方法

    这篇文章主要介绍了cakephp打印sql语句的方法,可实现打印输出之前全部SQL语句的功能,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • Yii+upload实现AJAX上传图片的方法

    Yii+upload实现AJAX上传图片的方法

    这篇文章主要介绍了Yii+upload实现AJAX上传图片的方法,实例分析了Yii结合upload插件实现ajax上传的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • Laravel创建数据库表结构的例子

    Laravel创建数据库表结构的例子

    今天小编就为大家分享一篇Laravel创建数据库表结构的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php实现httpclient类示例

    php实现httpclient类示例

    这篇文章主要介绍了php实现httpclient类示例,需要的朋友可以参考下
    2014-04-04
  • ThinkPHP3.2.3数据库设置新特性

    ThinkPHP3.2.3数据库设置新特性

    前篇文章,我们总结了下ThinkPHP3.2中所产生的新变化,本文我们来详细看下关于数据库这块有哪些新特性,非常细致,有需要的小伙伴参考下。
    2015-03-03
  • Laravel 连接(Join)示例

    Laravel 连接(Join)示例

    今天小编就为大家分享一篇Laravel 连接(Join)示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • PHP开发APP端微信支付功能

    PHP开发APP端微信支付功能

    这篇文章主要为大家详细介绍了PHP开发APP端微信支付的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02

最新评论