当前位置:  首页  >  PHP教程  >  PHP 基础  >  开发经验

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

这篇文章主要介绍了PHP实现模仿socket请求返回页面的方法,是socket通信非常实用的技巧,需要的朋友可以参考下

这篇文章主要介绍了PHP实现模仿socket请求返回页面的方法,是socket通信非常实用的技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有