| 導購 | 订阅 | 在线投稿
分享
 
 
 

file_get_contents函數不能使用的解決方法

來源:互聯網  2008-12-22 08:10:21  評論

有些主機服務商把php的allow_url_fopen選項是關閉了,就是沒法直接使用file_get_contents來獲取遠程web頁面的內容。那就是可以使用另外一個函數curl。

下面是file_get_contents和curl兩個函數同樣功能的不同寫法

file_get_contents函數的使用示例:

< ?php

$file_contents = file_get_contents('http://www.ccvita.com/');

echo $file_contents;

?>

換成curl函數的使用示例:

< ?php

$ch = curl_init();

$timeout = 5;

curl_setopt ($ch, CURLOPT_URL, 'http://www.ccvita.com');

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

$file_contents = curl_exec($ch);

curl_close($ch);

echo $file_contents;

?>

利用function_exists函數來判斷php是否支持一個函數可以輕松寫出下面函數

< ?php

function vita_get_url_content($url) {

if(function_exists('file_get_contents')) {

$file_contents = file_get_contents($url);

} else {

$ch = curl_init();

$timeout = 5;

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

$file_contents = curl_exec($ch);

curl_close($ch);

}

return $file_contents;

}

?>

其實上面的這個函數還有待商榷,如果你的主機服務商把file_get_contents和curl都關閉了,上面的函數就會出現錯誤。

有些主機服務商把php的allow_url_fopen選項是關閉了,就是沒法直接使用file_get_contents來獲取遠程web頁面的內容。那就是可以使用另外一個函數curl。 下面是file_get_contents和curl兩個函數同樣功能的不同寫法 file_get_contents函數的使用示例: < ?php $file_contents = file_get_contents('http://www.ccvita.com/'); echo $file_contents; ?> 換成curl函數的使用示例: < ?php $ch = curl_init(); $timeout = 5; curl_setopt ($ch, CURLOPT_URL, 'http://www.ccvita.com'); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents = curl_exec($ch); curl_close($ch); echo $file_contents; ?> 利用function_exists函數來判斷php是否支持一個函數可以輕松寫出下面函數 < ?php function vita_get_url_content($url) { if(function_exists('file_get_contents')) { $file_contents = file_get_contents($url); } else { $ch = curl_init(); $timeout = 5; curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents = curl_exec($ch); curl_close($ch); } return $file_contents; } ?> 其實上面的這個函數還有待商榷,如果你的主機服務商把file_get_contents和curl都關閉了,上面的函數就會出現錯誤。
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有