php实现统一的curl请求

php实现统一的curl请求

function curl_request($url, $method = 'GET', $data = array(), $headers = array()) {
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

    // 设置请求方法
    switch ($method) {
        case 'POST':
            curl_setopt($curl, CURLOPT_POST, true);
            curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
            break;
        case 'PUT':
        case 'PATCH':
        case 'DELETE':
            curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
            curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
            break;
    }
    
    // 设置请求头
    if (!empty($headers)) {
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
    }
    
    // 发送请求
    $response = curl_exec($curl);
    
    // 检查是否发生错误
    if ($response === false) {
        $response = curl_error($curl);
    }
    
    // 关闭 CURL
    curl_close($curl);
    
    // 返回响应数据
    return $response;

}



欢迎关注公-众-号【TaonyDaily】、留言、评论,一起学习。

文章来源:刘俊涛的博客


若有帮助到您,欢迎点赞、转发、支持,您的支持是对我坚持最好的肯定(_)

posted @ 2023-03-27 17:38  刘俊涛的博客  阅读(21)  评论(0编辑  收藏  举报