PHP CURL 想要把 Header 和 Body 都印出來,方便 Debug 用,要怎麼做呢?
PHP CURL 印出 Header 和 Body
PHP CURL 想要抓取抓取 HEADER,需要多加這個參數:
- curl_setopt($ch, CURLOPT_HEADER, 1);
想要印出詳細訊息,可以在加上這個:
- curl_setopt($ch, CURLOPT_VERBOSE, true);
在此就只有想要把 HTTP Header 和 Body 的的內容抓出來,並且印出的範例:
<?php function get_url($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 1); $response = curl_exec($ch); $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE); curl_close($ch); // 切出 Header 與 Body $header = substr($response, 0, $header_size); $body = substr($response, $header_size); $data['header'] = $header; $data['body'] = $body; retrurn $data; } print_r('http://example.com/'); // 就會有 header, body 的 Array 可以拿來使用 ?>