PHP中file_get_contents函數抓取https地址出錯的解決方法(兩種方法)

方法一:

在php中,抓取https的網站,提示如下的錯誤內容:

Warning: file_get_contents() [function.file-get-contents]: failed to open stream: Invalid argument in I:Webmyphpa.php on line 16

打開php.ini文件找到 ;extension=php_openssl.dll ,去掉雙引號”;” ,重啓web服務器即可。

apache服務器的話,可以同時啓用mod_ssl模塊測試。

如果不方便修改服務器配置,可以參考使用如下的函數來解決:

代碼示例:

 

<?php
//file_get_contents抓取https地址內容
function getCurl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$result = curl_exec($ch);
curl_close ($ch);
return $result;
}

 

方法二:

在php中,利用file_get_contents函數抓取url是https開頭的網站網頁內容時,會出現類似下面的錯誤警告:

Warning: file_get_contents(https://127.0.0.1/index.php) [function.file-get-contents]: failed to open stream: Invalid argument in E:\website\blog\test.php on line 25

打開php.ini找到 ;extension=php_openssl.dll ,去掉雙引號”;” ,重啓web服務器即可。

apache的可以同時啓用mod_ssl模塊測試

以上內容給大家分享了兩種方法解決PHP中file_get_contents函數抓取https地址出錯,希望對大家有所幫助。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章