PHP实现模仿socket请求返回页面的方法


Posted in PHP onNovember 04, 2014

本文实例讲述了PHP实现模仿socket请求返回页面的方法。分享给大家供大家参考。具体实现方法如下:

<?php

 $url = "www.XXXX.com";//自己做替换

 $parse = parse_url($url);
//对URL进行解析,返回起组成部分。

 $host = $parse['host'];

 $path = $parse['path'];

 $port = 80;

 $timeout = 80;

 $fp = @fsockopen($host, $port, $errno, $errstr, $timeout);
//打开socket链接

 if (!$fp){

     echo $errno."--".$errstr;
//如果错误,则返回错误代码和错误信息

 } else {

     $out = "POST $path HTTP/1.1\r\n";
//以下是HTTP请求头信息

     $out .= "Host: ".$host."\r\n";

     $out .= "Accept: */*\r\n"; 

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

     $out .= "Cookie: $cookie\r\n\r\n";

    

     @fwrite($fp, $out);
//把请求信息写到链接中

     $status = stream_get_meta_data($fp); 

     if(!$status['timed_out']) {     

                 while (!feof($fp)) {  

                     if(($header = @fgets($fp)) && ($header == "\r\n" ||  $header == "\n")) {     

                         break;     

                     }     

                 }     

         

                 $stop = false;     

                 while(!feof($fp) && !$stop) {     

                     $data = fread($fp,8192);      //8192为可返回字节数

                     $return .= $data;         

                 }     

             }     

     fclose($fp);

     print_r($return);

 }

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP4实际应用经验篇(2)
Oct 09 PHP
用穿越火线快速入门php面向对象
Feb 22 PHP
smarty 缓存控制前的页面静态化原理
Mar 15 PHP
PHP学习笔记(一) 简单了解PHP
Aug 04 PHP
javascript数组与php数组的地址传递及值传递用法实例
Jan 22 PHP
php单例模式示例分享
Feb 12 PHP
PHP中的密码加密的解决方案总结
Oct 26 PHP
详解Yii2 定制表单输入字段的标签和样式
Jan 04 PHP
php如何修改SESSION的生存存储时间的实例代码
Jul 05 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
Mar 02 PHP
Laravel 创建可以传递参数 Console服务的例子
Oct 14 PHP
laravel 模型查询按照whereIn排序的示例
Oct 16 PHP
php验证session无效的解决方法
Nov 04 #PHP
php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法
Nov 04 #PHP
php实现获取文章内容第一张图片的方法
Nov 04 #PHP
php禁止直接从浏览器输入地址访问.php文件的方法
Nov 04 #PHP
CI框架装载器Loader.php源码分析
Nov 04 #PHP
php+ajax实现无刷新分页的方法
Nov 04 #PHP
CI框架安全类Security.php源码分析
Nov 04 #PHP
You might like
PHP生成Flash动画的实现代码
2010/03/12 PHP
php计算程序运行时间的简单例子分享
2014/05/10 PHP
ASP中Sub和Function的区别说明
2020/08/30 Javascript
jquery+css3打造一款ajax分页插件(自写)
2014/06/18 Javascript
new Date()问题在ie8下面的处理方法
2014/07/31 Javascript
javascript实现的多个层切换效果通用函数实例
2015/07/06 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
JS实现页面载入时随机显示图片效果
2016/09/07 Javascript
Bootstrap按钮功能之查询按钮和重置按钮
2016/10/26 Javascript
JS匿名函数类生成方式实例分析
2016/11/26 Javascript
微信小程序商品到详情的实现
2017/06/27 Javascript
vue实现select下拉显示隐藏功能
2019/09/30 Javascript
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
2020/03/13 Javascript
Sublime Text3 配置 NodeJs 环境的方法
2020/05/20 NodeJs
vue相同路由跳转强制刷新该路由组件操作
2020/08/05 Javascript
javascript解析json格式的数据方法详解
2020/08/07 Javascript
跟老齐学Python之有容乃大的list(1)
2014/09/14 Python
Python3 Random模块代码详解
2017/12/04 Python
Python实现一个Git日志统计分析的小工具
2017/12/14 Python
python画图把时间作为横坐标的方法
2019/07/07 Python
python global关键字的用法详解
2019/09/05 Python
简单介绍django提供的加密算法
2019/12/18 Python
浅谈Python中range与Numpy中arange的比较
2020/03/11 Python
python如何解析复杂sql,实现数据库和表的提取的实例剖析
2020/05/15 Python
在python中使用pyspark读写Hive数据操作
2020/06/06 Python
全面解析HTML5中的标准属性与自定义属性
2016/02/18 HTML / CSS
法国床上用品商店:La Compagnie du lit
2019/12/26 全球购物
.NET程序员的数据库面试题
2012/10/10 面试题
护士演讲稿范文
2014/01/05 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
2015年财务人员个人工作总结
2015/07/27 职场文书
创业计划书之韩国烧烤店
2019/09/19 职场文书
解决jupyter notebook启动后没有token的坑
2021/04/24 Python
JavaScript实现音乐播放器
2022/08/14 Javascript