php curl get post json xml请求提交

本文记录了使用PHP的curl库进行GET、POST请求以及处理JSON和XML数据的方法,旨在交流学习,欢迎指正和讨论。
摘要由CSDN通过智能技术生成

做做笔记,有错误,望大神指点,多多讨论,多多留言!


    /**
     * GET请求
     * @param $url
     * @param array $data
     * @param bool $https
     * @param int $timeout
     * @return bool|string
     */
    function httpGet($url,$data=array(),$https=true,$timeout=60) {
        if($url == "" || $timeout <= 0){
            return false;
        }
        if(is_array($data)) {
            $url = $url . '?' . http_build_query($data);
        }
        $curl = curl_init();
        if ($https) {
            //设置为https请求,不验证证书和hosts
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
            curl_setopt($curl, CURLOPT_SSLVERSION, 1); //CURL_SSLVERSION_TLSv1
        }
        curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

        $response_data = curl_exec($curl);
        $status = curl_getinfo($curl);
        curl_close($curl);

        if(intval($status["http_code"])==200){
            return $response_data;
        }else{
            return  false;
        }
    }

    /**
     * 获取GET请求结果
     * @param $url
     * @return mixed
     */
    function getData($url){
        $method ="GET";
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_FAILONERROR, false);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_HEADER, false);
        curl_setopt($curl, CURLOPT_ENCODING, "gzip");
        $ret = curl_exec($curl);
        $all = json_decode($ret,true);
        return $all;
    }

    /**
     * POST请求
     * @param $url
     * @param array $data
     * @param bool $https
     * @param int $timeout
     * @return bool|string
     */
    function httpPost($url,$data=array(),$https=true,$timeout=60) {
        if($url &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值