PHPの$_SERVER(サーバー変数)で取得できる情報

記事内に広告が含まれています。

$_SERVER(サーバー変数)は連想配列としてヘッダ情報、パス情報、スクリプトの情報などを保持しています。

$_SERVER(サーバー変数)は連想配列なので$_SERVER[‘連想配列キー名’]でアクセスすることができます。

$_SERVER(サーバー変数)で取得できる情報

$_SERVER(サーバー変数)で取得できる値はvar_dump()で出力することで調べることができます。

<!--?php var_dump($_SERVER); ?-->

$_SERVER(サーバー変数)で取得できる値

以下が$_SERVER(サーバー変数)で取得できる値になります。
$_SERVERより)

連想配列キー名 内容
PHP_SELF 現在実行しているスクリプトのファイル名です。 ドキュメントルートから取得されます。 例えば、http://example.com/foo/bar.php というアドレス上にあるスクリプトでは $_SERVER[‘PHP_SELF’] は /foo/bar.php となります。 __FILE__ 定数 には、カレント(すなわち読み込まれた)ファイルのパスとファイル名が含まれます。 PHP がコマンドラインから実行される場合、PHP 4.3.0 以降、 この変数にはスクリプト名が含まれます。これより前のバージョンでは、 この変数は使用できません。
argv スクリプトに渡された引数の配列です。スクリプトがコマンドラインから 実行された場合、C 言語スタイルでコマンドライン引数に アクセスすることができます。GET メソッドを通してコールされた場合には 検索引数が格納されます。
argc スクリプトに渡されたコマンドライン引数の数 (コマンドラインから実行した場合) です。
GATEWAY_INTERFACE サーバーが使用している CGI のバージョンです。 例 ‘CGI/1.1’
SERVER_ADDR 現在のスクリプトが実行されているサーバーの IP アドレスです。
SERVER_NAME 現在のスクリプトが実行されているサーバーのホスト名です。 スクリプトがバーチャルホスト上で実行されている場合は そのバーチャルホスト名となります。
SERVER_SOFTWARE レスポンスヘッダ上に書かれている、 サーバーの認識文字列です。
SERVER_PROTOCOL ページがリクエストされた際のプロトコル名とバージョンです。 例.’HTTP/1.0′
REQUEST_METHOD ページにアクセスする際に使用されたリクエストのメソッド名です。 ‘GET’, ‘HEAD’, ‘POST’, ‘PUT’ など。
REQUEST_TIME リクエストの開始時のタイムスタンプ。PHP 5.1.0 以降で利用可能。
REQUEST_TIME_FLOAT リクエストの開始時のタイムスタンプ (マイクロ秒までの精度)。 PHP 5.4.0 以降で利用可能。
QUERY_STRING ページがアクセスされた際にもし検索引数があればそれが格納されます。
DOCUMENT_ROOT 現在実行されているスクリプトが存在するドキュメントルート ディレクトリです。サーバーのコンフィグレーションファイルで 定義されています。
HTTP_ACCEPT 現在のリクエストの Accept: ヘッダがもしあれば その内容。
HTTP_ACCEPT_CHARSET 現在のリクエストの Accept-Charset: ヘッダが もしあればその内容。例: ‘iso-8859-1,*,utf-8’
HTTP_ACCEPT_ENCODING 現在のリクエストに Accept-Encoding: ヘッダが もしあればその内容。例: ‘gzip’
HTTP_ACCEPT_LANGUAGE 現在のリクエストに Accept-Language: ヘッダが もしあればその内容。例: ‘en’
HTTP_CONNECTION 現在のリクエストに Connection: ヘッダが もしあればその内容。例: ‘Keep-Alive’
HTTP_HOST 現在のリクエストに Host: ヘッダが もしあればその内容。
HTTP_REFERER 現在のページに遷移する前にユーザーエージェントが参照していた ページのアドレス(もしあれば)。これはユーザーエージェントに よってセットされます。全てのユーザーエージェントが これをセットしているわけではなく、また、HTTP_REFERER を変更する機能を持つものもあります。 要するに、信頼するべきものではありません。
HTTP_USER_AGENT 現在のリクエストに User-Agent: ヘッダがもしあればその内容。ページにアクセスしてきているユーザーエージェント のしるしの文字列です。
HTTPS スクリプトが HTTPS プロトコルを通じて実行されている場合に 空でない値が設定されます。
REMOTE_ADDR 現在ページをみているユーザーの IP アドレス。
REMOTE_HOST 現在のページにアクセスしているホスト名。DNS の逆引き検索は ユーザーの REMOTE_ADDR に基づいています。
REMOTE_PORT ユーザーのマシンから Web サーバーへの通信に使用されているポート番号
REMOTE_USER 認証されたユーザー。
REDIRECT_REMOTE_USER リクエストが内部でリダイレクトされた場合の認証されたユーザー。
SCRIPT_FILENAME 現在実行されているスクリプトの絶対パス
SERVER_ADMIN Web サーバーの設定ファイルの SERVER_ADMIN (Apache の場合)ディレクティブ にセットされている値。スクリプトがバーチャルホスト上で 実行されている場合、バーチャルホストに対して値が定義されます。
SERVER_PORT Web サーバーの通信ポートとして使用されているポート番号。
SERVER_SIGNATURE サーバー上で生成されたページに追加される、 サーバーのバージョン名とバーチャルホスト名の文字列。 Web サーバーの設定で有効になっていることが必要です。
PATH_TRANSLATED バーチャルからリアルへのマッピングがなされた後の、 現在のスクリプトのファイルシステム上(ドキュメントルートではなく) でのパス。
SCRIPT_NAME 現在のスクリプトのパス。 スクリプト自身のページを指定するのに有用です。 __FILE__ 定数には、カレント(すなわち読み込まれた)ファイルのパスとファイル名が 含まれます。
REQUEST_URI ページにアクセスするために指定された URI。例えば、 ‘/index.html’
PHP_AUTH_DIGEST HTTP ダイジェスト認証を 行っている場合、クライアントから送られた ‘Authorization’ ヘッダの 内容が設定されます(適切な認証処理を行うために利用します)。
PHP_AUTH_USER HTTP 認証しているときにそのユーザー名がセットされます。
PHP_AUTH_PW HTTP 認証しているときにそのユーザーの パスワードがセットされます。
AUTH_TYPE HTTP 認証しているときにその認証形式がセットされます。
PATH_INFO 実際のスクリプトファイル名とクエリ文字列の間にある、クライアントが提供するパス名情報。
ORIG_PATH_INFO PHP で処理される前の ‘PATH_INFO’ の原本。
スポンサーリンク
スポンサーリンク
PHP
スポンサーリンク
ソフトウェア開発日記
タイトルとURLをコピーしました