カールのドキュメントによると:
/* TRUE to include the header in the output. */
curl_setopt($Curl_Connection, CURLOPT_HEADER, TRUE);
したがって、curl_exec コマンドの出力にヘッダーが追加されます。私はこれを吐き出してきましたが、応答本文とは別にヘッダーを取得する方法がわかりません。圧縮された出力 (圧縮、膨張) の読み取りを開始すると、さらに悪化します。
その上、これは配列ではなく 1 つの大きな文字列であるため、たとえば curl_getinfo のような形式のヘッダーが必要な場合は、配列を返します。
最も簡単なのはこれを行うことです:
$backend_output = curl_exec($ch);
list( $backend_response_headers, $backend_response_body)
= explode("\r\n\r\n", $backend_output, 2);
それはこれら2つを分割しますが、応答ヘッダーの文字列になり、はるかに役立つ配列ではなくなります. たとえば、/(\w)\s:(\w)/ のような単純なものを分割できないため、正規表現を使用しても、そこから配列を作成することはそれほど明白ではありません。特定のフィールドで「:」が発生する可能性があるためです。 . curl がヘッダーを個別に提供するのは非常にクールですが、ドキュメントを確認する限り、そこにはないようです。
セッション Cookie に関しては、そのためには CURLOPT_COOKIESESSION = true オプションを使用する必要があると思いますが、専門家が Cookie を使用する必要がほとんどないため、Cookie の経験はほとんどありません。幸運を
更新: http://php.net/manual/en/function.http-parse-headers.phpまたは pecl がない場合はユーザー コメント セクションのカスタム関数で解析できるヘッダー。