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 相关文章推荐
如何把PHP转成EXE文件
Oct 09 PHP
php xml-rpc远程调用
Dec 19 PHP
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
Jul 04 PHP
php中使用Curl、socket、file_get_contents三种方法POST提交数据
Aug 12 PHP
PHP MySQL应用中使用XOR运算加密算法分享
Aug 28 PHP
php生成静态页面的简单示例
Apr 17 PHP
php实现文件下载实例分享
Jun 02 PHP
php分页函数完整实例代码
Sep 22 PHP
MySql数据库查询结果用表格输出PHP代码示例
Mar 20 PHP
Laravel 中获取上一篇和下一篇数据
Jul 27 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 PHP
php常用日期时间函数实例小结
Jul 04 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
win平台安装配置Nginx+php+mysql 环境
2016/01/12 PHP
php面向对象值单例模式
2016/05/03 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
2016/11/01 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
imgAreaSelect 中文文档帮助说明
2011/10/08 Javascript
如何用JavaScript动态呼叫函数(两种方式)
2013/05/03 Javascript
基于JavaScript实现文字超出部分隐藏
2016/02/29 Javascript
微信小程序实战之自定义toast(6)
2017/04/18 Javascript
详解使用nodeJs安装Vue-cli
2017/05/17 NodeJs
jquery实现图片轮播器
2017/05/23 jQuery
详解angularJS动态生成的页面中ng-click无效解决办法
2017/06/19 Javascript
Vue中this.$router.push参数获取方法
2018/02/27 Javascript
python图像处理之反色实现方法
2015/05/30 Python
Django Highcharts制作图表
2016/08/27 Python
python通过pip更新所有已安装的包实现方法
2017/05/19 Python
python OpenCV学习笔记实现二维直方图
2018/02/08 Python
在Python中过滤Windows文件名中的非法字符方法
2019/06/10 Python
Python图像处理模块ndimage用法实例分析
2019/09/05 Python
Python tkinter实现图片标注功能(完整代码)
2019/12/08 Python
使用npy转image图像并保存的实例
2020/07/01 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
在终端启动Python时报错的解决方案
2020/11/20 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
浅析CSS3中鲜为人知的属性:-webkit-tap-highlight-color
2017/01/12 HTML / CSS
德国游戏机商店:Konsolenkost
2019/12/08 全球购物
岗位廉洁从业承诺书
2014/03/28 职场文书
大学生社会实践方案
2014/05/11 职场文书
后进基层党组织整改方案
2014/10/25 职场文书
党员教师群众路线思想汇报范文
2014/10/28 职场文书
2014年个人售房协议书
2014/10/30 职场文书
道歉的话语大全
2015/05/12 职场文书
结婚典礼主持词
2015/06/29 职场文书
优化经济发展环境工作总结
2015/08/11 职场文书
关于考试抄袭的检讨书
2019/11/02 职场文书
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL
Redis唯一ID生成器的实现
2022/07/07 Redis