如何从请求CURL php获取代码错误?

时间:2013-07-15 16:46:23

标签: php curl

我使用代码:

public function GetPage($url, $post=false, $data=null){ //Function Auth
        $this->refferer = $url;
        curl_setopt($this->curl_obj, CURLOPT_URL,$url);
        if($post == true){
            curl_setopt($this->curl_obj, CURLOPT_POST, 1);
            curl_setopt($this->curl_obj, CURLOPT_POSTFIELDS, $data);
        } else {
            curl_setopt($this->curl_obj, CURLOPT_POST, 0);
        }
        return curl_exec($this->curl_obj);
    }

这个函数返回false,为什么?我怎么能找出原因?

2 个答案:

答案 0 :(得分:0)

您可以使用curl_error()

        print_r(curl_error($this->curl_obj)) ;
        //print_r(curl_getinfo($this->curl_obj)) ;  // for detailed information

根据您的评论如下。在执行之前将这两个选项添加到CURL中 警告:即使有些中间人误解了你的路线,也会删除SSL警告

curl_setopt ($this->curl_obj, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($this->curl_obj, CURLOPT_SSL_VERIFYPEER, 0); 

答案 1 :(得分:0)

您可以致电:

获取更多详细信息
echo curl_error($this->curl_obj);

如果您想要退回内容,则需要设置CURLOPT_RETURNTRANSFER

curl_setopt($this->curl_obj, CURLOPT_RETURNTRANSFER, true);

如果你没有设置它,那么cURL将回显内容,而不是作为函数的返回值返回。