PHP では、getenv (パラメーター) 関数は環境変数を取得するために使用される関数です。次のように、指定されたパラメーターに応じて異なる環境変数を取得できます。
「PHP_SELF」
ドキュメントルートに関連する、現在実行中のスクリプトのファイル名。たとえば、URL アドレス [url]http://example.com/test.php/foo.bar[/url] を持つスクリプトで $_SERVER['PHP_SELF'] を使用すると、 /test.php/foo になります。結果を妨げます。 __FILE__ 定数には、現在の (つまり、ファイルを含む) ファイルの絶対パスとファイル名が含まれます。
PHP がコマンドラインから実行される場合、この変数は PHP 4.3.0 より前では効果がありません。
"argv"
このスクリプトに渡されるパラメータ。スクリプトがコマンド ライン モードで実行されると、argv 変数が C スタイルのコマンド ライン引数としてプログラムに渡されます。 GET メソッドが呼び出されると、この変数には要求されたデータが含まれます。
"argc"
プログラムに渡されるコマンド ライン引数の数が含まれます (コマンド ライン モードで実行している場合)。
「ゲートウェイ_インターフェース」
サーバーが使用する CGI 仕様のバージョン。たとえば、「CGI/1.1」です。
「SERVER_NAME」
スクリプトが現在実行されているサーバーホストの名前。スクリプトが仮想ホスト上で実行されている場合、名前はその仮想ホストに設定された値によって決まります。
「サーバー_ソフトウェア」
リクエストに対する応答のヘッダーに指定される、サーバーを識別する文字列。
「サーバー_プロトコル」
ページをリクエストするときに使用される通信プロトコルの名前とバージョン。たとえば、「HTTP/1.0」です。
「REQUEST_METHOD」
ページにアクセスする際のリクエストメソッド。例: 「GET」、「HEAD」、「POST」、「PUT」。
注: リクエスト メソッドが HEAD の場合、PHP スクリプトはヘッダー情報の送信後に中止されます (これは、出力が生成された後は出力バッファリングが存在しないことを意味します)。
「REQUEST_TIME」
リクエストが開始されたときのタイムスタンプ。 PHP 5.1.0 以降で有効です。
「QUERY_STRING」
クエリの文字列 (URL の最初の疑問符? の後の内容)。
「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: ヘッダーの内容。例:「エン」。
「HTTP_CONNECTION」
現在のリクエストの Connection: ヘッダー情報の内容。例:「キープアライブ」。
「HTTP_HOST」
現在のリクエストの Host: ヘッダー情報の内容。
「HTTP_REFERER」
現在のページにリンクしている前のページの URL アドレス。すべてのユーザー エージェント (ブラウザー) がこの変数を設定するわけではなく、一部のユーザー エージェント (ブラウザー) は HTTP_REFERER を手動で変更することもできます。したがって、この変数は常に真であるとは限りません。
「HTTP_USER_AGENT」
現在のリクエストの User-Agent: ヘッダーの内容。この文字列は、このページにアクセスするユーザー エージェントに関する情報を示します。典型的な例は次のとおりです: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)。この情報は、get_browser() を使用して取得することもできます。
「HTTPS」
スクリプトが HTTPS プロトコル経由でアクセスされる場合は、空ではない値に設定します。
「REMOTE_ADDR」
現在のページを閲覧しているユーザーの IP アドレス。
「REMOTE_HOST」
現在のページを閲覧しているユーザーのホスト名。逆ドメイン名解決は、ユーザーの REMOTE_ADDR に基づきます。
注: この変数を確立するように Web サーバーを構成する必要があります。たとえば、Apache では httpd.conf で HostnameLookups On が必要です。 gethostbyaddr() を参照してください。
「REMOTE_PORT」
ユーザーがサーバーに接続するために使用するポート。
「SCRIPT_FILENAME」
現在実行中のスクリプトの絶対パス名。
注: スクリプトが file.php や ../file.php などの相対パスとして CLI から実行される場合、$_SERVER['SCRIPT_FILENAME'] にはユーザー指定の相対パスが含まれます。
「SERVER_ADMIN」
この値は、Apache サーバー構成ファイルの SERVER_ADMIN パラメーターを指定します。スクリプトが仮想ホスト上で実行されている場合、この値はその仮想ホストの値になります。
「サーバーポート」
サーバーが使用するポート。デフォルトは「80」です。 SSL セキュア接続を使用する場合、この値はユーザーが設定した HTTP ポートです。
「SERVER_SIGNATURE」
サーバーのバージョンと仮想ホスト名を含む文字列。
「PATH_TRANSLATED」
現在のスクリプトが配置されているファイル システムのベース パス (ドキュメント ルートではありません)。これは、サーバーが仮想パスから実際のパスにイメージ化された後の結果です。
注: PHP 4.3.2 以降、Apache 2 SAPI モードの PATH_TRANSLATED は、Apache 1 のように暗黙的に割り当てられなくなりました。代わりに、Apache がこの値を生成しない場合、PHP が自ら値を生成し、その値を SCRIPT_FILENAME サーバー定数に入れます。この変更は、PATH_INFO が定義されている場合にのみ PATH_TRANSLATED が存在するという CGI 仕様に準拠しています。
Apache 2 ユーザーは、httpd.conf で AcceptPathInfo On を使用して PATH_INFO を定義できます。
「SCRIPT_NAME」
現在のスクリプトへのパスが含まれます。これは、ページがそれ自体を指す必要がある場合に便利です。 __FILE__ には、現在のファイル (インクルード ファイルなど) の絶対パスとファイル名が含まれます。
「REQUEST_URI」
このページにアクセスするために必要な URI。たとえば、「/index.html」です。
「PHP_AUTH_DIGEST」
Apache モジュールとして実行する場合、HTTP ダイジェスト認証中に、この変数はクライアントによって送信された「Authorization」HTTP ヘッダーの内容に設定されます (さらなる認証操作のために)。
「PHP_AUTH_USER」
PHP が Apache または IIS (PHP 5 は ISAPI) モジュール モードで実行されており、HTTP 認証機能が使用されている場合、この変数はユーザーが入力したユーザー名になります。
「PHP_AUTH_PW」
PHP が Apache または IIS (PHP 5 は ISAPI) モジュール モードで実行されており、HTTP 認証機能が使用されている場合、この変数はユーザーが入力したパスワードになります。
この記事は「WebOS」ブログからのものです