php 模拟get_headers函数的代码示例


Posted in PHP onApril 27, 2013
<?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://3water.com'));
PHP 相关文章推荐
一个php作的文本留言本的例子(五)
Oct 09 PHP
加强版phplib的DB类
Mar 31 PHP
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
Nov 18 PHP
PHP文件读写操作之文件写入代码
Jan 13 PHP
php 大数据量及海量数据处理算法总结
May 07 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十五)
Jun 30 PHP
Smarty环境配置与使用入门教程
May 11 PHP
php文件上传 你真的掌握了吗
Nov 28 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
Apr 03 PHP
Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作
Jun 30 PHP
Laravel中Facade的加载过程与原理详解
Sep 22 PHP
phpinfo的知识点总结
Oct 10 PHP
php获取本地图片文件并生成xml文件输出具体思路
Apr 27 #PHP
php笔记之:php函数range() round()和list()的使用说明
Apr 26 #PHP
php笔记之:php数组相关函数的使用
Apr 26 #PHP
php笔记之:有规律大文件的读取与写入的分析
Apr 26 #PHP
php笔记之:文章中图片处理的使用
Apr 26 #PHP
php笔记之:初探PHPcms模块开发介绍
Apr 26 #PHP
input file获得文件根目录简单实现
Apr 26 #PHP
You might like
PHP对象转换为数组函数(递归方法)
2012/02/04 PHP
改写函数实现PHP二维/三维数组转字符串
2013/09/13 PHP
ThinkPHP删除栏目(实现批量删除栏目)
2017/06/21 PHP
jsTree树控件(基于jQuery, 超强悍)[推荐]
2009/09/01 Javascript
javascript 跨浏览器开发经验总结(五) js 事件
2010/05/19 Javascript
jQuery仿Excel表格编辑功能的实现代码
2013/05/01 Javascript
Jquery 数组操作大全个人总结
2013/11/13 Javascript
jQuery中contents()方法用法实例
2015/01/08 Javascript
jQuery源码分析之jQuery.fn.each与jQuery.each用法
2015/01/23 Javascript
NODE.JS跨域问题的完美解决方案
2016/10/20 Javascript
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
2017/12/24 jQuery
JS常用正则表达式超全集(密码强度校验,金额校验,IE版本,IPv4,IPv6校验)
2020/02/03 Javascript
node.js开发辅助工具nodemon安装与配置详解
2020/02/06 Javascript
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
Python抽象类的新写法
2015/06/18 Python
让python 3支持mysqldb的解决方法
2017/02/14 Python
Python将图片转换为字符画的方法
2020/06/16 Python
python文件拆分与重组实例
2018/12/10 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
2019/02/18 Python
python threading和multiprocessing模块基本用法实例分析
2019/07/25 Python
Python编译成.so文件进行加密后调用的实现
2019/12/23 Python
浅谈pytorch torch.backends.cudnn设置作用
2020/02/20 Python
基于python实现地址和经纬度转换
2020/05/19 Python
详解Html5页面实现下载文件(apk、txt等)的三种方式
2018/10/22 HTML / CSS
StubHub意大利:购买和出售全球演唱会和体育赛事门票
2017/11/21 全球购物
英国领先的名牌服装折扣零售商:Brown Bag Clothing
2019/01/08 全球购物
汇科协同Java笔试题
2012/03/31 面试题
酒店前厅员工辞职信
2014/01/08 职场文书
现场施工员岗位职责
2014/03/10 职场文书
单位委托书
2014/10/15 职场文书
群众路线教育实践活动实施方案
2014/10/31 职场文书
详解Laravel服务容器的优势
2021/05/29 PHP
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS
PostGIS的安装与入门使用指南
2022/01/18 PostgreSQL