登录

php类 方法里调用curl(),不成功

class Qq_api {

    private $list;

    function __construct() {
        $this->list['dsp_id'] = DSP_ID;
        $this->list['token'] = TOKEN;
    }

    function curl_post($end = '') {
$ch = curl_init(URL.$end);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    }

    function sync() {
        $this->curl_post('sync');


        $arr = array();



curl_setopt($ch, CURLOPT_POSTFIELDS,$arr);
$result = curl_exec($ch);
var_dump($result);


    }   
}

提示:Warning: curl_setopt(): supplied argument is not a valid cURL handle resource in C:\AppServ\www\qq_api2.php on line 45

我是在方法里调用curl(),好像curl()只能在_construct()里面初始化吧,如果是为什么?

# PHP
怪我咯怪我咯2153 天前508 次浏览

全部回复(1) 我要回复

  • 阿神

    阿神2017-04-10 15:41:17

    不好意思,封贴.乱试试出来了。

    在类里的方法声明的变量$ch是局部的,把所有$ch地方改成$this->ch就行了

        function curl_post($end = '') {
    $this->ch = curl_init(URL.$end);
    curl_setopt($this->ch, CURLOPT_CUSTOMREQUEST, 'POST');
    curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, true);
        }
    

    回复
    0
  • 取消回复发送