php curl如何設置自定義請求頭和打印請求頭信息


$header = [
    'client:h5',
    'token:test',
];

curlRequest($url, $params, true, 10, $header);

PHP5.1.3版以上支持用curl_getinfo函數來獲取請求頭
具體需要先設置 curl_setopt($ch, CURLINFO_HEADER_OUT, true);
然后在請求發生后用 curl_getinfo($ch, CURLINFO_HEADER_OUT);

    function curlRequest($url, $params = array(), $is_post = false, $time_out = 10, $header=array())
    {
        $str_cookie = isset($ext_params['str_cookie']) ? $ext_params['str_cookie'] : '';$ch = curl_init();//初始化curl
        curl_setopt($ch, CURLOPT_URL, $url);//抓取指定網頁
        curl_setopt($ch, CURLOPT_HEADER, 0);//設置是否返回response header
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求結果為字符串且輸出到屏幕上

        //當需要通過curl_getinfo來獲取發出請求的header信息時,該選項需要設置為true
        curl_setopt($ch, CURLINFO_HEADER_OUT, true);

        curl_setopt($ch, CURLOPT_TIMEOUT, $time_out);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time_out);
        curl_setopt($ch, CURLOPT_POST, $is_post);

        if ($is_post) {
            curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
        }

        if ($str_cookie) {
            curl_setopt($ch, CURLOPT_COOKIE, $str_cookie);
        }

        if ($header) {
            curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
        }

        $response = curl_exec($ch);

     //打印請求的header信息
$request_header = curl_getinfo( $ch, CURLINFO_HEADER_OUT); print_r($request_header); curl_close($ch); return $response; }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM