首页  >  问答  >  正文

php - curl_exec 返回false,curl_error返回空

curl_exec($ch)的返回值一直是false,调用curl_errno($ch)是空的???

public function http_curl($url,$type='get',$res='json',$arr=''){
    // 初始化
    $ch=curl_init();
    // 设置参数
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch,CURLOPT_HEADER,FALSE);
    if($type == 'post'){
        curl_setopt($ch,CURLOPT_POST, true);
        curl_setopt($ch,CURLOPT_POSTFIELDS,$arr);
    }
    $output=curl_exec($ch);
    curl_close($ch);
    var_dump($output);
    echo 'error:'.curl_errno($ch);
    if(curl_errno($ch)){
        var_dump(curl_errno($ch));
    }
    if($res == 'json'){
        return json_decode($output,true); 
    }
        return $output;
}

滿天的星座滿天的星座2728 天前1930

全部回复(3)我来回复

  • 龍

    2019-05-16 15:23:58

    我的在curl_init返回空怎么办

    回复
    0
  • phpcn_u1582

    phpcn_u15822017-05-24 11:35:47

    谢邀!

    curl_errno($ch)之前你已经关闭了句柄,改变下顺序再去打印。

    回复
    0
  • 迷茫

    迷茫2017-05-24 11:35:47

    关闭了连接还能获取到错误那就怪了。。获取错误要放在curl_close之前

    回复
    0
  • 取消回复