首頁  >  文章  >  後端開發  >  幾種php訪問url的方法

幾種php訪問url的方法

小云云
小云云原創
2018-03-20 10:07:1612099瀏覽

本文主要和大家分享幾種php訪問url的方法,總共有四種,希望能幫助大家。

1、fopen方式  

 //访问指定URL函数
function access_url($url) 
{        if($url=='') return false;       
$fp = fopen($url, 'r') or exit('Open url faild!');        
if($fp){       while(!feof($fp)) {           
 $file .= fgets($fp) . "";       }       
 fclose($fp);        }      
 return $file;   }

2、file_get_contents方式(開啟遠端檔案的時候會造成CPU飆升。file_get_contents其實也可以post)   

//以post方式获取url
$data = array ('foo' => 'bar');
$data = http_build_query($data);
$opts['http'] = array (
  'method' => 'POST',
  'header'=> "Content-type:application/x-www-form-urlencodedrn".
  "Content-Length: " . strlen($data) . "rn",
  'content' => $data
);
$context = stream_context_create($opts);
$html = file_get_contents('http://localhost/test.html', false, $context);
echo $html;

3、curl方式##3、curl方式

#
  
function curl_file_get_contents($durl){  
    $ch = curl_init();  
    curl_setopt($ch, CURLOPT_URL, $durl);  
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 获取数据返回    
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ; // 在启用 CURLOPT_RETURNTRANSFER 时候将获取数据返回    
    $data = curl_exec($ch);  
    curl_close($ch);  
    return $data;  
}

4、fsockopen方式(只能獲取網站主頁信息,其他頁面不可以)

 $fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);     
 (!$fp) {     
    echo "$errstr ($errno)<br />\n";     
 }else {     
    $out="GET / HTTP/1.1\r\n";     
    $out.="Host: www.example.com\r\n";     
    $out.="Connection: Close\r\n\r\n";     
    fwrite($fp, $out);     
    while (!feof($fp)) {     
        echo fgets($fp, 128);     
    }  
    fclose($fp);     
 }

相關推薦:

php循環訪問url寫法問題

php 亂碼轉碼觸發存取url的方法

#Oracle的資料庫存取Url: oci 和thin 的差異

#

以上是幾種php訪問url的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn