ホームページ > バックエンド開発 > PHPチュートリアル > PHPの使い方を詳しく解説 $_SERVER 変数_PHPチュートリアル

PHPの使い方を詳しく解説 $_SERVER 変数_PHPチュートリアル

WBOY
リリース: 2016-07-13 10:49:39
オリジナル
929 人が閲覧しました

PHP $_SERVER に含まれる変数はすべてグローバル変数であり、スーパーグローバル変数と呼ぶことができます。以下に、一般的に使用される PHP $_SERVER の使用方法の詳細を整理します。


私がよく使う $_SERVER[] 変数

$_SERVER['HTTP_ACCEPT_LANGUAGE']//ブラウザ言語

$_SERVER['REMOTE_ADDR'] //現在のユーザー IP。

$_SERVER['REMOTE_HOST'] //現在のユーザーのホスト名

$_SERVER['REQUEST_URI'] //URL

$_SERVER['REMOTE_PORT'] //ポート。

$_SERVER['SERVER_NAME'] //サーバーホストの名前。

$_SERVER['PHP_SELF']//実行されるスクリプトのファイル名

$_SERVER['argv'] //スクリプトに渡されるパラメータ。

$_SERVER['argc'] //プログラムに渡されるコマンドラインパラメータの数。

$_SERVER['GATEWAY_INTERFACE']//CGI 仕様のバージョン。

$_SERVER['SERVER_SOFTWARE'] //サーバー識別の文字列

$_SERVER['SERVER_PROTOCOL'] //ページをリクエストするときの通信プロトコルの名前とバージョン

$_SERVER['REQUEST_METHOD']//ページアクセス時のリクエストメソッド

$_SERVER['QUERY_STRING'] //クエリ文字列。

$_SERVER['DOCUMENT_ROOT'] //現在実行中のスクリプトが配置されているドキュメントルートディレクトリ

$_SERVER['HTTP_ACCEPT'] //現在のリクエストの Accept: ヘッダーの内容。

$_SERVER['HTTP_ACCEPT_CHARSET'] //現在のリクエストの Accept-Charset: ヘッダーの内容。

$_SERVER['HTTP_ACCEPT_ENCODING'] //現在のリクエストの Accept-Encoding: ヘッダーの内容

$_SERVER['HTTP_CONNECTION'] //現在のリクエストの Connection: ヘッダーの内容。例:「キープアライブ」。

$_SERVER['HTTP_HOST'] //現在のリクエストの Host: ヘッダーの内容。

$_SERVER['HTTP_REFERER'] //現在のページにリンクされている前のページの URL アドレス。

$_SERVER['HTTP_USER_AGENT'] //現在のリクエストの User_Agent: ヘッダーの内容。

$_SERVER['HTTPS']// https 経由でアクセスされた場合、空ではない値 (on) に設定され、それ以外の場合は off が返されます

$_SERVER['SCRIPT_FILENAME'] #現在実行中のスクリプトの絶対パス名。

$_SERVER['SERVER_ADMIN'] #管理者情報

$_SERVER['SERVER_PORT'] #サーバーが使用するポート

$_SERVER['SERVER_SIGNATURE'] #サーバーのバージョンと仮想ホスト名を含む文字列。

$_SERVER['PATH_TRANSLATED'] #現在のスクリプトが配置されているファイル システムのベース パス (ドキュメント ルート ディレクトリではありません)。

$_SERVER['SCRIPT_NAME'] #現在のスクリプトのパスが含まれます。これは、ページがそれ自体を指す必要がある場合に便利です。

$_SERVER['PHP_AUTH_USER'] #PHP が Apache モジュール モードで実行され、HTTP 認証関数を使用している場合、この変数はユーザーが入力したユーザー名です。

$_SERVER['PHP_AUTH_PW'] #PHP が Apache モジュール モードで実行され、HTTP 認証関数を使用している場合、この変数はユーザーが入力したパスワードです。

$_SERVER['AUTH_TYPE'] #PHP が Apache モジュール モードで実行され、HTTP 認証関数を使用している場合、この変数は認証タイプです


ページプログラム関連

•$_SERVER['PHP_SELF']: Web サイトのルート ディレクトリに対する相対パスと、ドキュメント ルートに関連する PHP プログラム名。
•$_SERVER['HTTP_REFERER']: 現在のページにリンクされている前のページの URL アドレス。
•$_SERVER['SCRIPT_NAME']: Web サイトのルート ディレクトリに対する相対パスと PHP プログラム ファイルの名前。
•$_SERVER['REQUEST_URI']: このページにアクセスするために必要な URI。
•$_SERVER['SCRIPT_FILENAME']: 現在実行中の PHP プログラムの絶対パスとファイル名。
•$_SERVER['PATH_TRANSLATED']: 現在の PHP プログラムが配置されているファイル システムのベース パス (ドキュメント ルート ディレクトリではありません)。
•$_SERVER['QUERY_STRING']: クエリ文字列 (URL の最初の疑問符 ? 以降の内容 (# 以降の内容は除く))。
•$_SERVER['argv']: 現在の PHP プログラムに渡される引数。
•$_SERVER['argc']: コマンド ライン モードでは、プログラムに渡されるコマンド ライン パラメータの数が含まれます。
•$_SERVER['REQUEST_TIME']: リクエストが開始されたときのタイムスタンプ。PHP 5.1.0 以降で有効です。
•$_SERVER['REQUEST_METHOD']: ページにアクセスするときのリクエスト方法 (「GET」、「HEAD」、「POST」、「PUT」など)。
•$_SERVER['HTTP_ACCEPT']: 現在のリクエストの Accept: ヘッダーの内容。
•$_SERVER['HTTP_ACCEPT_CHARSET']: 現在のリクエストの Accept-Charset: ヘッダーの内容。例: 「iso-8859-1,*,utf-8」。
•$_SERVER['HTTP_ACCEPT_ENCODING']: 現在のリクエストの Accept-Encoding: ヘッダーの内容。例:「gzip」。
•$_SERVER['HTTP_ACCEPT_LANGUAGE']: 現在のリクエストの Accept-Language: ヘッダーの内容。例:「zh-cn」。
•$_SERVER['HTTP_CONNECTION']: 現在のリクエストの Connection: ヘッダー情報の内容。例:「キープアライブ」。
•$_SERVER['HTTP_HOST']: 現在のリクエストの Host: ヘッダー情報の内容。
•$_SERVER['HTTPS']: PHP プログラムが HTTPS プロトコルを通じてアクセスされる場合は、空ではない値に設定されます。
•$_SERVER['PHP_AUTH_DIGEST']: Apache モジュールとして実行している場合、HTTP ダイジェスト認証プロセス中に、この変数は (さらなる認証操作のために) クライアントによって送信された「Authorization」HTTP ヘッダーの内容に設定されます。
•$_SERVER['PHP_AUTH_USER']: PHP が Apache または IIS (PHP 5 は ISAPI) モジュール モードで実行されており、HTTP 認証機能が使用されている場合、この変数はユーザーが入力したユーザー名です。
•$_SERVER['PHP_AUTH_PW']: PHP が Apache または IIS (PHP 5 は ISAPI) モジュール モードで実行されており、HTTP 認証機能が使用されている場合、この変数はユーザーが入力したパスワードです。
•$_SERVER['AUTH_TYPE']: PHP が Apache モジュール モードで実行され、HTTP 認証関数が使用されている場合、この変数は認証タイプになります。

サーバーサイド関連

•$_SERVER['DOCUMENT_ROOT']: PHP プログラムが現在実行されているドキュメント ルート ディレクトリ。サーバー構成ファイルで定義されます。
•$_SERVER['GATEWAY_INTERFACE']: サーバーで使用される CGI 仕様のバージョン (例: "CGI/1.1")。
•$_SERVER['SERVER_ADDR']: PHP プログラムが現在実行されているサーバーの IP アドレス。
•$_SERVER['SERVER_NAME']: PHP プログラムが現在実行されているサーバーの名前。
•$_SERVER['SERVER_ADMIN']: Apache サーバー設定ファイルの SERVER_ADMIN パラメータ。
•$_SERVER['SERVER_PORT']: サーバーが使用するポート。 SSL セキュア接続を使用する場合、この値はユーザーが設定した HTTP ポートです。

•$_SERVER['SERVER_SIGNATURE']: サーバーのバージョンと仮想ホスト名を含む文字列。
•$_SERVER['SERVER_SOFTWARE']: リクエストに応答するときにヘッダー情報で指定される、サーバーを識別する文字列。
•$_SERVER['SERVER_PROTOCOL']: ページを要求するときの通信プロトコルの名前とバージョン (例: "HTTP/1.0")。

その他雑貨

•$_SERVER['HTTP_USER_AGENT']: 現在のリクエストの User-Agent: ヘッダー情報の内容 この文字列は、ページにアクセスしているユーザー エージェントの情報を示します。
•$_SERVER['REMOTE_ADDR']: 現在のページを閲覧しているユーザーの IP アドレス。
•$_SERVER['REMOTE_HOST']: 現在のページを閲覧しているユーザーのホスト名。
•$_SERVER['REMOTE_PORT']: ユーザーがサーバーに接続するために使用するポート。
コマンドラインから PHP を実行する場合、上記の要素の一部は有効である (または実際の意味を持たない) ことに注意してください。


例 1

PHP は現在の URL パスを取得します

1,$_SERVER["QUERY_STRING"]
説明: クエリ文字列
2.$_SERVER["REQUEST_URI"]
説明: このページにアクセスするには URI が必要です

3,$_SERVER["SCRIPT_NAME"]
説明: 現在のスクリプトのパスが含まれます

4,$_SERVER["PHP_SELF"]
説明: 現在実行中のスクリプトのファイル名

例:
1. http://www.bKjia.c0m/ (ホームページを直接開きます)
結果:
$_SERVER["QUERY_STRING"] = ""
$_SERVER["REQUEST_URI"] = "/"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"] = "/index.php"

2、http://www.bKjia.c0m/?p=222 (クエリ付き)
結果:
$_SERVER["QUERY_STRING"] = "p=222"
$_SERVER["REQUEST_URI"] = "/?p=222"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"] = "/index.php"

3、http://www.bKjia.c0m/index.php?p=222&q=biuuu
結果:
$_SERVER["QUERY_STRING"] = "p=222&q=biuuu"
$_SERVER["REQUEST_URI"] = "/index.php?p=222&q=biuuu"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"] = "/index.php"

$_SERVER["QUERY_STRING"] はクエリ文を取得します
例からわかるように、? 以降の値が取得されます。 $_SERVER["REQUEST_URI"] /
を含む、http://www.bKjia.c0m 以降の値を取得します $_SERVER["SCRIPT_NAME"] は、index.php
などの現在のスクリプトのパスを取得します。 $_SERVER["PHP_SELF"] 現在実行中のスクリプトのファイル名


現在の URL: "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']


要約すると、QUERY_STRING、REQUEST_URI、SCRIPT_NAME、および PHP_SELF について深く理解すると、$_SERVER 関数でこれら 4 つの値を正しく呼び出すことができます。詳細な例を通じて、$_SERVER 関数の 4 つの変数 QUERY_STRING、REQUEST_URI、SCRIPT_NAME、および PHP_SELF の違いを学びます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632700.html技術記事 PHP $_SERVER に含まれる変数はすべてスーパーグローバル変数と呼ばれるグローバル変数です。ここで、PHP $_SERVER の一般的な使い方を詳しく整理します。 私はよく使います...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート