PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
方法一:
在php中,抓取https的网站,提示如下的错误内容:
Warning:file_get_contents()[function.file-get-contents]:failedtoopenstream:InvalidargumentinI:Webmyphpa.phponline16
打开php.ini文件找到;extension=php_openssl.dll,去掉双引号”;”,重启web服务器即可。
apache服务器的话,可以同时启用mod_ssl模块测试。
如果不方便修改服务器配置,可以参考使用如下的函数来解决:
代码示例:
<?php //file_get_contents抓取https地址内容 functiongetCurl($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]:failedtoopenstream:InvalidargumentinE:\website\blog\test.phponline25
打开php.ini找到;extension=php_openssl.dll,去掉双引号”;”,重启web服务器即可。
apache的可以同时启用mod_ssl模块测试
以上内容给大家分享了两种方法解决PHP中file_get_contents函数抓取https地址出错,希望对大家有所帮助。