php模拟发送get请求

php 模拟发送 get 请求的几种方法总结。

(1)php 通过 file_get_contents 模拟发送 get 请求

  1. <?php 
  2. $url='http://www.daimajiayuan.com/sitejs-17300-1.html'
  3. $re=file_get_contents($url); 
  4. print_r($re); 

(2)php 通过 curl 模拟发送 get 请求

  1. <?php 
  2. $ch=curl_init('http://www.daimajiayuan.com/sitejs-17300-1.html'); 
  3. curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); 
  4. curl_setopt($ch,CURLOPT_BINARYTRANSFER,true); 
  5. $output=curl_exec($ch); 
  6. $fh=fopen("out.html",'w'); 
  7. fwrite($fh,$output); 
  8. fclose($fh); 

(3)php 通过 fsocket 模拟发送 get 请求

  1. <?php 
  2. function sock_get($url){   
  3.     $info=parse_url($url); 
  4.     $fp=fsockopen($info["host"],80,$errno,$errstr,3); 
  5.     $head="GET ".$info['path']."?".$info["query"]." HTTP/1.0\r\n"
  6.     $head.="Host: ".$info['host']."\r\n"
  7.     $head.="\r\n"
  8.     $write=fputs($fp,$head); 
  9.     while(!feof($fp)){   
  10.         $line=fgets($fp);  
  11.         echo $line."<br>"
  12.     } 

该函数的使用方法如下:

  1. $url='http://www.daimajiayuan.com/sitejs-17300-1.html'
  2. echo "以下是GET方式的响应内容:<br>"
  3. sock_get($url); 

转载请注明:代码家园 » php模拟发送get请求

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)