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

yipeiwu_com5年前PHP代码库

本文实例讲述了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常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】

本文实例总结了php常用数组array函数。分享给大家供大家参考,具体如下: array_combine 功能:用一个数组的值作为新数组的键名,另一个数组的值作为新数组的值 案例:...

谈谈PHP连接Access数据库的注意事项

谈谈PHP连接Access数据库的注意事项

首先需要注意: 安装access 数据库的时候 需要安装与本机系统相互匹配的office版本,win7 64位的系统 ,那么Office也要是64位的 最好装 office2010。。。...

php缓冲输出实例分析

本文实例讲述了php缓冲输出用法。分享给大家供大家参考。具体分析如下: ob_start([string output_callback])- 打开输出缓冲区 所有的输出信息不在直接发送...

PHP json格式和js json格式 js跨域调用实现代码

先看一个js函数 复制代码 代码如下: function jsontest() { var json = [{'username':'crystal','userage':'20'},{...

php学习之数据类型之间的转换介绍

复制代码 代码如下: /*数据类型之间相互转换 * 一种是强制转换 * setType(变量,类型); //int,integer,float,double等等。 * 这个函数将原变量的...