Loading

PHP 使用curl 发送post json请求

用于偶尔需要请求数据, 不想引入 guzzle request for php 等包

function doCurlPostRequest($url = '',Array $data = array())
{
    $data_string = json_encode($data,JSON_UNESCAPED_UNICODE);
    // $data_string = $data;
    $curl_con = curl_init();
    curl_setopt($curl_con, CURLOPT_URL,$url);
    curl_setopt($curl_con, CURLOPT_HEADER, false);
    curl_setopt($curl_con, CURLOPT_POST, true);
    curl_setopt($curl_con, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($curl_con, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($curl_con, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json',
            'Content-Length: ' . strlen($data_string))
    );
    curl_setopt($curl_con, CURLOPT_POSTFIELDS, $data_string);
    $res = curl_exec($curl_con);
    $status = curl_getinfo($curl_con);
    curl_close($curl_con);

    if (isset($status['http_code']) && $status['http_code'] == 200) {
        return $res;
    } else {
        return FALSE;
    }
}
posted @ 2021-03-30 16:02  天才大野狼  阅读(4487)  评论(0)    收藏  举报