简单的CURL操作 已封装函数 支持POST、GET

版权声明:志远有18CM https://blog.csdn.net/qq_33182954/article/details/80853577

简单的CURL操作 已封装函数 支持POST、GET


    /**
     * 简单的CURL操作
     * @author ZhiYuan
     * @param $url              访问的URL
     * @param array $post       POST数据(不填则为GET)
     * @param string $cookie    提交的cookie字符串
     * @param int $returnCookie 是否返回cookie
     * @return mixed|string
     */
    function curl_request($url, $post = array(), $cookie = '', $returnCookie = 0)
    {
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)');
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
        curl_setopt($curl, CURLOPT_REFERER, "http://XXX");
        if ($post) {
            curl_setopt($curl, CURLOPT_POST, 1);
            curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
        }
        if ($cookie) {
            curl_setopt($curl, CURLOPT_COOKIE, $cookie);
        }
        curl_setopt($curl, CURLOPT_HEADER, $returnCookie);
        curl_setopt($curl, CURLOPT_TIMEOUT, 10);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $data = curl_exec($curl);
        if (curl_errno($curl)) {
            return curl_error($curl);
        }
        curl_close($curl);
        if ($returnCookie) {
            list($header, $body) = explode("\r\n\r\n", $data, 2);
            preg_match_all("/Set\-Cookie:([^;]*);/", $header, $matches);
            $info['cookie'] = substr($matches[1][0], 1);
            $info['content'] = $body;
            return $info;
        } else {
            return $data;
        }
    }

返回数据是字符串:{“sign”: “abcdecghijklmnopqrst”}


猜你喜欢

转载自blog.csdn.net/qq_33182954/article/details/80853577