php file_get_contents抓取https地址报错的解决办法

发布时间:2020-09-23编辑:脚本学堂
在php中使用file_get_contents函数抓取https地址时报错:failed to open stream: Invalid argument in...,这里分享下我的解决方法,供大家参考。

在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/ target=_blank class=infotextkey>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;
}