PHP封装一个POST,GET,PUT,DELETE的CURL函数

3个月前 PHP代码 124°C

这篇文章最后更新于09-11 10:16前,您需要注意相关的内容是否还可用,如有疑问请联系作者!

由于工作原因,做得比较多的都是接口和接口之前的数据交互,所以要经常用到curl,所以把curl封装了一下以便使用。一下返回可以设置返回数组或者json格式。

<?php
/**
     * Notes: 封装PHPCurl请求
     * Author: nobita
     * Date: 2019/7/23 10:58
     * @param $url
     * @param null $data
     * @param string $method
     * @param bool $jsonFormat
     * @param string $header
     * @param bool $https
     * @param int $timeout
     * @return bool|mixed|string
     */
    function network_request($url, $data = null, $method = 'get', $jsonFormat = true, $header = '', $https = false, $timeout = 15)
    {
        $method = strtoupper($method);
        $ch = curl_init();//初始化
        curl_setopt($ch, CURLOPT_URL, $url);//访问的URL
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//只获取页面内容,但不输出
        if ($https) {
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//https请求 不验证证书
            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);//https请求 不验证HOST
        }
        if ($method != "GET") {
            if ($method == 'POST') {
                curl_setopt($ch, CURLOPT_POST, true);//请求方式为post请求
            }
            if ($method == 'PUT' || strtoupper($method) == 'DELETE') {
                curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method); //设置请求方式
            }
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//请求数据
        }
        curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
        if (!empty($header)) {
            curl_setopt($ch, CURLOPT_HTTPHEADER, $header); //模拟的header头
        } else {
            curl_setopt($ch, CURLOPT_HEADER, false);//设置不需要头信息
        }
        $result = curl_exec($ch);//执行请求
        curl_close($ch);//关闭curl,释放资源
        if (!$jsonFormat) {
            return $result;
        }
        return json_decode($result, true);
}

用法

<?php
network_request($api,$queryParams,'post')

文章来源于:https://199508.com/post/2063

版权说明:本站所提供的文章、图片等内容均为用户发布或互联网整理而来,仅供学习参考,如有侵犯您的版权,请联系我们客服人员删除。
本文链接:https://huue.cc/index.php/archives/1276.html
最后编辑: 21年09月11日

随机内容

网友评论

1周前

感觉ci更简单轻便。

2周前

wwwww

3周前

支持awa

4周前

可以可以

1个月前

看看

2个月前

看一下