そのため、ブラウザーがサーバーに HTTP 要求を行う場合、それはいくつかのヘッダー (get/post、Cookie、ホスト、ユーザー エージェントなど) の形式になります。それらをphpスクリプトで読んで表示する方法はありますか?はい、$_GET、$_POST、および $_COOKIE は問題ありません。残りのヘッダー情報を探していました。例http://pgl.yoyo.org/http/browser-headers.phpありがとうございます。
4 に答える
get_headers()関数が探しているものです。引用されたように
get_headers — HTTP リクエストに応答してサーバーから送信されたすべてのヘッダーを取得します
簡単な例:
$url = 'http://www.example.com';
print_r(get_headers($url));
サーバーが送信するすべての情報を出力します。
配列 (
[0] => HTTP/1.1 200 OK [1] => Date: Sat, 29 May 2004 12:28:13 GMT [2] => Server: Apache/1.3.27 (Unix) (Red-Hat/Linux) [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT [4] => ETag: "3f80f-1b6-3e1cb03b" [5] => Accept-Ranges: bytes [6] => Content-Length: 438 [7] => Connection: close [8] => Content-Type: text/html )
アップデート
ブラウザから送信された情報を受け取るには、$_SERVER
スーパーグローバル変数からアクセスできます。たとえば、次のスニペットはすべてのブラウザ関連情報を提供します。
echo $_SERVER['HTTP_USER_AGENT'];
同様に、
REQUEST_METHOD
: GET、HEAD、Put、Post などの HTTP リクエスト メソッドを指定します。HTTP_HOST
: ホスト情報を提供しますHTTP_COOKIE
: Cookie ヘッダーに関する生の情報を提供します[ソース]
私のお気に入り: http://php.net/manual/en/function.apache-request-headers.php
現在のリクエストからすべての HTTP リクエスト ヘッダーを取得します。
<?php
$headers = apache_request_headers();
foreach ($headers as $header => $value) {
echo "$header: $value <br />\n";
}
?>
$_GET['requestName']
, $_POST['requestName']
(または$_REQUEST['requestName']
GET または POST のいずれかを取得する) を使用して、これらを取得できます。
Cookie は$_COOKIE['varName']
. こちらも調べてみるといいかもしれません$_SESSION[]
。
はい。$_POST、$_GET、および $_COOKIE スーパーグローバルを調べます。これらは、ヘッダー情報を含む配列です。
http://www.tizag.com/phpT/postget.php