ウェピックスではウェブ界の情報をピックアップします!
menu
ホーム > PHPの文法 > 5 変数 > PHP $_ENV(環境変数)のすべて!【初心者向け基本】

PHP $_ENV(環境変数)のすべて!【初心者向け基本】

Pocket

PHP5 PHP7

  • $_ENV
    PHPの定義済み変数(=スーパーグローバル変数)の1つ
  • $_ENV現在の環境変数の値
  • $_ENVphpinfo() で環境変数を確認できる
  • $_ENV連想配列として使用する
  • $_ENV は、関数やメソッドの内部で使用する場合、
    global $_ENV; とする必要がない


$_ENV(環境変数)とは

POINT

  • $_ENV
    PHPの定義済み変数(=スーパーグローバル変数)の1つ
  • $_ENV現在の環境変数の値
  • $_ENVphpinfo() で環境変数を確認できる
  • $_ENV連想配列として使用する
  • $_ENV は、関数やメソッドの内部で使用する場合、
    global $_ENV; とする必要がない

$_ENVは、PHPの定義済み変数の環境変数です。この変数は、現在のスクリプトに渡された環境の値の変数です。ドキュメントルートのルートディレクトリやサーバーのIPアドレスなどの環境情報を取得することが出来ます。

環境変数はPHPパーサが実行されている環境に依存します。定義されている環境変数の内容については使用しているシェルのドキュメントを確認して下さい。

シェル:シェル (shell) はオペレーティングシステム (OS) の機能の一部であり、ユーザーからの指示を受けて解釈し、プログラムの起動や制御などを行うプログラムである。
パーサ:プログラムのソースコードやXML文書など、一定の文法に従って記述された複雑な構造のテキスト文書を解析し、プログラムで扱えるようなデータ構造の集合体に変換するプログラムのこと。そのような処理のことを「構文解析」「パース」(perse)という。

phpinfo()関数のEnvironmentで環境変数のリストを確認できます。

以下は環境変数のリストの例です。

$_ENVは、連想配列で使用します。

また、環境変数は getenv() 関数 で取得することも出来ます。

$_ENVは、スーパーグローバル変数なので、スクリプトのコード中どこからでも使用することが出来る変数です。関数やメソッドの内部で使用する場合にも global $_ENV; とする必要はありません。


$_ENVはPHPの定義済み変数

$_ENVは、PHPの定義済み変数の内の1つの変数です。PHPには定義済み変数が複数あります。其の中の1つが$_ENVです。
PHPの定義済み変数はスーパーグローバル変数とも言います。
$_ENV = PHPの定義済み変数 = スーパーグローバル変数
また、$_ENVは自動グローバル変数とも呼ばれます。
(PHPには定義済みの定数というものもあります。詳細はこちらを参照下さい。)

PHPの定義済み変数(=スーパーグローバル変数)

$GLOBALS
(グローバル変数)
・グローバルスコープで使用可能なすべての変数への参照
・連想配列として使用
$_SERVER
(サーバー変数)
・サーバ情報および実行時の環境情報
・連想配列として使用
$_GET
(ゲット変数)
・HTTP GET 変数
・連想配列として使用
$_POST
(ポスト変数)
・HTTP POST 変数
・連想配列として使用
$_FILES
(ファイル変数)
・HTTP ファイルアップロード変数
・連想配列として使用
$_REQUEST
(リクエスト変数)
・HTTP リクエスト変数
・連想配列として使用
$_SESSION
(セッション変数)
・セッション変数
・連想配列として使用
$_ENV
(環境変数)
・環境変数
・連想配列として使用
$_COOKIE
(クッキー変数)
・HTTP クッキー
・連想配列として使用

これら、PHPの定義済み変数は、プログラムコード中何処からでも使用することができます。関数の内部でも globalキーワードを使用せず呼び出すことが出来ます。このように、スーパーグローバル変数は非常に便利なものです。
通常、変数には有効範囲などのルールがあります。このルールは、PHPにおいて変数のスコープという宣言の場所とそれによる有効範囲として定められています。スコープには、「グローバルスコープ」「ローカルスコープ」「スタティック変数」「関数の引数」の4種類ありますが、これらすべてのスコープを持っているのがスーパーグローバル変数です。
変数のスコープについてはこちらを参照下さい。

※注意2:
ただし、スーパーグローバル変数は、関数やクラスメソッドの中の 可変変数 として使用することはできません。

可変変数についてはこちらを参照下さい。


サンプルコード

– サンプル Click Here ! –

実行結果
$_ENV変数
$_ENV[‘REMOTE_ADDR’]で取得 [ 121.103.18.189 ]
getenv(‘REMOTE_ADDR’)で取得 [ 121.103.18.189 ]

– サンプル Click Here ! –


タグ(=記事関連ワード)

日付

投稿日:2011年10月20日
最終更新日:2017年03月22日

関連記事

配列関数サンプル

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

http://wepicks.net/phpref-env/trackback/