PHP中file_get_contents函数抓取https地址内容返回false

杨新朋| 阅读:175 发表时间:2017-11-10 17:45:15 后端技术

PHP中file_get_contents函数抓取https地址内容返回false的两种解决方案。

第一种:

打开php.ini文件找到 ;extension=php_openssl.dll ,去掉双引号”;” ,重启web服务器即可。

第二种:

如果你没有权利修改服务器的php.ini配置文件,可以采用curl这种方案

/**
 * 通用CURL请求
 * @param $url  需要请求的url
 * @param null $data
 * return mixed 返回值 json格式的数据
 */
public function http_request($url, $data = null){
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
    if (!empty($data)) {
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    }
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $info = curl_exec($curl);
    curl_close($curl);
    return $info;
}
本文由杨新朋发表并编辑,转载此文章须经作者同意,并请附上出处及本页链接。如有侵权,请联系本站删除。