4

そのため、ブラウザーがサーバーに HTTP 要求を行う場合、それはいくつかのヘッダー (get/post、Cookie、ホスト、ユーザー エージェントなど) の形式になります。それらをphpスクリプトで読んで表示する方法はありますか?はい、$_GET、$_POST、および $_COOKIE は問題ありません。残りのヘッダー情報を探していました。例http://pgl.yoyo.org/http/browser-headers.phpありがとうございます。

4

4 に答える 4

8

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 ヘッダーに関する生の情報を提供します[ソース]
于 2012-08-19T05:46:16.123 に答える
6

私のお気に入り: 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";
    }
?>
于 2012-08-19T10:06:05.470 に答える
2

$_GET['requestName'], $_POST['requestName'](または$_REQUEST['requestName']GET または POST のいずれかを取得する) を使用して、これらを取得できます。

Cookie は$_COOKIE['varName']. こちらも調べてみるといいかもしれません$_SESSION[]

于 2012-08-19T05:42:56.380 に答える
0

はい。$_POST、$_GET、および $_COOKIE スーパーグローバルを調べます。これらは、ヘッダー情報を含む配列です。
http://www.tizag.com/phpT/postget.php

于 2012-08-19T05:43:29.010 に答える