-1

我使用代码:

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,为什么?我怎样才能找出原因?

4

2 回答 2

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); 
于 2013-07-15T16:49:01.207 回答
0

您可以致电了解更多详情:

echo curl_error($this->curl_obj);

如果要返回内容,则需要设置CURLOPT_RETURNTRANSFER

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

如果您不设置此项,则 cURL 将回显内容,而不是作为函数的返回值返回。

于 2013-07-15T16:50:56.983 回答