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

前端技术 2023/09/05 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程序设计有所帮助。

本文地址:https://www.stayed.cn/item/14403

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。