PHP では、getenv (パラメーター) 関数は環境変数を取得するために使用される関数です。次のように、指定されたパラメーターに応じて異なる環境変数を取得できます。
「PHP_SELF」
現在実行中のスクリプトのドキュメント ルートからの相対ファイル名。たとえば、URL アドレス [url]http://example.com/test.php/foo.bar[/url] を持つスクリプトで $_SERVER['PHP_SELF'] を使用すると、 /test.php/foo になります。結果を妨げます。 __FILE__ 定数には、現在の (つまり、ファイルを含む) ファイルの絶対パスとファイル名が含まれます。
"argv"
このスクリプトに渡されるパラメータ。スクリプトがコマンド ライン モードで実行されると、argv 変数が C スタイルのコマンド ライン引数としてプログラムに渡されます。 GET メソッドが呼び出されると、この変数には要求されたデータが含まれます。
プログラムに渡されるコマンド ライン引数の数が含まれます (コマンド ライン モードで実行している場合)。
サーバーが使用する CGI 仕様のバージョン。たとえば、「CGI/1.1」です。
スクリプトが現在実行されているサーバーホストの名前。スクリプトが仮想ホスト上で実行されている場合、名前はその仮想ホストに設定された値によって決まります。
リクエストに対する応答のヘッダーに指定される、サーバーを識別する文字列。
ページをリクエストするときに使用される通信プロトコルの名前とバージョン。たとえば、「HTTP/1.0」です。
ページにアクセスする際のリクエストメソッド。例: 「GET」、「HEAD」、「POST」、「PUT」。
「REQUEST_TIME」
リクエストが開始されたときのタイムスタンプ。 PHP 5.1.0 以降で有効です。
クエリの文字列 (URL の最初の疑問符 ? の後の内容)。
現在実行中のスクリプトが配置されているドキュメントのルート ディレクトリ。サーバー構成ファイルで定義されます。
現在のリクエストの Accept: ヘッダーの内容。
現在のリクエストの Accept-Charset: ヘッダーの内容。例: 「iso-8859-1,*,utf-8」。
現在のリクエストの Accept-Encoding: ヘッダーの内容。例:「gzip」。
現在のリクエストの Accept-Language: ヘッダーの内容。例:「エン」。
現在のリクエストの Connection: ヘッダーの内容。例:「キープアライブ」。
現在のリクエストの Host: ヘッダーの内容。
現在のページにリンクしている前のページの URL アドレス。すべてのユーザー エージェント (ブラウザー) がこの変数を設定するわけではなく、一部のユーザー エージェント (ブラウザー) は HTTP_REFERER を手動で変更することもできます。したがって、この変数は常に真であるとは限りません。
現在のリクエストの User-Agent: ヘッダーの内容。この文字列は、このページにアクセスするユーザー エージェントに関する情報を示します。典型的な例は次のとおりです: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)。この情報は、get_browser() を使用して取得することもできます。
スクリプトが HTTPS プロトコル経由でアクセスされる場合は、空ではない値に設定します。
現在のページを閲覧しているユーザーの IP アドレス。
現在のページを閲覧しているユーザーのホスト名。逆ドメイン名解決は、ユーザーの REMOTE_ADDR に基づきます。
「REMOTE_PORT」
ユーザーがサーバーに接続するために使用するポート。
現在実行中のスクリプトの絶対パス名。
「SERVER_ADMIN」
この値は、Apache サーバー構成ファイルの SERVER_ADMIN パラメーターを指定します。スクリプトが仮想ホスト上で実行されている場合、この値はその仮想ホストの値になります。
サーバーが使用するポート。デフォルトは「80」です。 SSL セキュア接続を使用する場合、この値はユーザーが設定した HTTP ポートです。
サーバーのバージョンと仮想ホスト名を含む文字列。
「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 認証が使用されている場合、この変数はユーザーが入力したパスワードになります。