首页 > 开发 > PHP > 正文

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

2024-05-04 23:26:48
字体:
来源:转载
供稿:网友
这篇文章主要介绍了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程序设计有所帮助。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表