PHPスーパーグローバル変数
PHPスーパーグローバル変数

1.PHP5からの注意事項
MySQLを使用する場合、php.iniの設定をphp_mysql.dll など使用するDLLのコメント(; セミコロン)を外して有効にする。
PHP4ではMySQLの指定は不要でしたがPHP5からは指定する必要がある。
ブラウザからサーバーにパラメータが渡らないこれはphp.iniファイルのregister_global=Onとすれば回避される。
ファイルの属性をphpにしないとphp5では正常に動作しない。
2.スーパーグローバル変数
PHP4.2.0以降、セキュリティー強化の為、register_globalsパラメータの値が従来の「On」から「Off」に変更になっています。
これにより各変数の値が従来のような「$変数名」と言う簡単な形で取得できなくなっており、おそらくPHP4.1.0より追加された
スーパーグローバル変数を使わなくてはいけなくなりました。
尚、このスーパーグローバル変数は通常の変数と異なり、global宣言をすることなく参照できます。

スーパーグローバル変数
以下、このスーパーグローバル変数の概略です。
 変数名 従来の名前  使用方法 
$_SERVER $HTTP_SERVER_VARS  実行環境情報などを保持する  
$_ENV $HTTP_ENV_VARS  環境変数
$_POST $HTTP_POST_VARS  HTTP POSTメソッドで与えられた変数
$_GET $HTTP_GET_VARS  HTTP GETメソッドで与えられた変数
$_COOKIE $HTTP_COOKIE_VARS  HTTPクッキーを通じて与えられた変数

$_SERVER
 従来、環境周りの情報を取得するために使用していた $PHP_SELF、$REMOTE_ADDRなどが、すべて $_SERVER[ ]にまとめられた。
 例: $_SERVER["PHP_SELF"]

$_ENV
 PHP実行時の環境変数(getenv()で取得できるもの)を保持している。PHPがDSOで組み込まれている場合は、サーバーの実行時の環境変数となる。

$_POST、$_GET
 HTMLフォームのMETHODでPOSTを指定した場合、スクリプト側は $_POST['変数名'] で入力を受け取る。
 METHODでGETを指定、または何も指定しなかった場合、又はURLに「?変数名=値」で渡された引数については$_GET['変数名'] で受け取る。

$_COOKIE
 クライアントからクッキーで送り込まれた値を保持する。
HOME