PHP curl没有返回值的解决办法:1、打开相应的PHP代码文件;2、通过“curl_setopt($ch,CURLOPT_URL,$get_token_url);curl_setopt();...”代码解决即可。
本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。
PHP使用curl访问https返回无结果的问题
最近在做一个微信自动登录,发起验证以后回调页面获取openid时 curl函数返回空。
$appid = appid appid ; $secret = secret ; $code = $_GET[code]; $get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$secret.'&code='.$code.'&grant_type=authorization_code'; //header(location:$get_token_url); echo $get_token_url.<BR>; $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$get_token_url); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1 ); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,10); $res = curl_exec($ch); echo echo:.json_encode($res).<br>; //显示false echo curl_multi_getcontent($ch).<br>; //空 curl_close($ch); $json_obj = json_decode($res,true); //根据openid和access_token查询用户信息 $access_token = $json_obj['access_token']; $openid = $json_obj['openid']; var_dump($res); //显示obj(false) echo $openid;
结果curl无返回值,最终百度到一片文章 http://yanda.net.cn/articles/453 文章中提到
改成如下问题解决
$ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$get_token_url); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //不验证证书 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); //不验证证书 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1 ); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,10); $res = curl_exec($ch); var_dump($res); //有返回值
推荐学习:《PHP教程》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。