PHP でヘッダーを読み取るにはどうすればよいですか?
たとえば、カスタム ヘッダー: X-Requested-With
。
ベストアンサー1
IF :すべてのヘッダーではなく、単一のヘッダーのみが必要な場合、最も簡単な方法は次のとおりです。
<?php
// Replace XXXXXX_XXXX with the name of the header you need in UPPERCASE (and with '-' replaced by '_')
$headerStringValue = $_SERVER['HTTP_XXXXXX_XXXX'];
それ以外の場合: PHP を Apache モジュールとして実行するか、PHP 5.4 以降では FastCGI を使用します (簡単な方法):
<?php
$headers = apache_request_headers();
foreach ($headers as $header => $value) {
echo "$header: $value <br />\n";
}
ELSE:それ以外の場合は、(ユーザーランド実装) を使用できます。
<?php
function getRequestHeaders() {
$headers = array();
foreach($_SERVER as $key => $value) {
if (substr($key, 0, 5) <> 'HTTP_') {
continue;
}
$header = str_replace(' ', '-', ucwords(str_replace('_', ' ', strtolower(substr($key, 5)))));
$headers[$header] = $value;
}
return $headers;
}
$headers = getRequestHeaders();
foreach ($headers as $header => $value) {
echo "$header: $value <br />\n";
}
参照:
すべてのヘッダーを取得する()- (PHP >= 5.4)
クロスプラットフォーム版
のエイリアスapache_request_headers()
apache_response_headers()- すべての HTTP 応答ヘッダーを取得します。
ヘッダーリスト()- 送信するヘッダーのリストを取得します。