2012-10-08 224 views
12

我有一個網站。我們稱之爲http://www.domain.com。現在,在此域名上,我想顯示http://www.adserversite.com/ads.php的文件內容。我怎麼用cURL或其他方法做到這一點?我不想使用iframe通過PHP獲取文件內容cURL

感謝

+0

的**相關的部分可能的複製**。在提出已被問及已被Google搜索到的問題之前,請先進行調查。 – Gordon

回答

8
echo file_get_contents('http://www.adserversite.com/ads.php'); 

誰需要捲曲了這個簡單的任務?

+15

注意:如果在php.ini中'allow_url_fopen'是「On」,在某些共享主機上可能不是這樣,就像@ m4t1t0提到的那樣。當我安裝curl時,我個人遇到過幾次情況,但'allow_url_fopen'被禁用。 – zergussino

+1

另請注意,file_get_contents比cURL慢得多! http://stackoverflow.com/questions/13004805/file-get-contents-or-curl-in-php/24954327#24954327 – CodeBrauer

+0

另外請注意,curl會默認正確檢查SSL證書 - PHP只會做正確的事情,因爲版本5.6,並且不能在早期版本中支持SubjectAlternativeName字段。 – Sven

38

您可以像Petr說的那樣使用file_get_contents,但是您需要在php.ini中激活allow_url_fopen,也許您的託管不允許您更改此設置。

如果你喜歡使用,而不是file_get_contents捲曲,試試這個代碼:

<?php 
$url = 'http://www.adserversite.com/ads.php'; 
$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $url); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_HEADER, false); 
$data = curl_exec($curl); 
curl_close($curl); 
+1

儘管真實且完全準確,但對於使用cURL具有安裝cURL擴展的要求(默認情況下,allow_url_fopen處於打開狀態),可能會有所幫助: –

+2

您是對的,file_get_contents是可取的,但我遇到了問題在過去與共享主機。 – m4t1t0

+1

使用PHP 7我遇到了兩種方法的問題allow_url_fopen正在安裝curl。 –