天天看點

PHP 4.2.0及後續版本中的預定義變量

         PHP 4.2.0 以及後續版本中,PHP 指令 egister_globals的預設值為 off。這是 PHP 的一個主要變化。讓 register_globals 的值為 off 将影響到預定義變量集在全局範圍内的有效性。例如,為了得到 DOCUMENT_ROOT 的值,你将必須使用 $_SERVER['DOCUMENT_ROOT'] 代替 $DOCUMENT_ROOT,又如,使用 $_GET['id'] 來代替 $id 從 URL http://www.example.com/test.php?id=3 中擷取 id 值,亦或使用 $_ENV['HOME'] 來代替 $HOME 擷取環境變量 HOME 的值。

PHP 超全局變量

$GLOBALS
包含一個引用指向每個目前腳本的全局範圍内有效的變量。該數組的鍵标為全局變量的 名稱。從 PHP 3 開始存在 $GLOBALS 數組。
l$_SERVER
變量由 Web 伺服器設定或者直接與目前腳本的執行環境相關聯。類似于舊數組 $HTTP_SERVER_VARS 數組(依然有效,但反對使用)。
$_GET
經由 HTTP GET 方法送出至腳本的變量。類似于舊數組 $HTTP_GET_VARS 數組(依然有效,但反對使用)。
$_POST
經由 HTTP POST 方法送出至腳本的變量。類似于舊數組 $HTTP_POST_VARS 數組(依然有效,但反對使用)。
$_COOKIE
經由 HTTP Cookies 方法送出至腳本的變量。類似于舊數組 $HTTP_COOKIE_VARS 數組(依然有效,但反對使用)。
$_FILES
經由 HTTP POST 檔案上傳而送出至腳本的變量。類似于舊數組 $HTTP_POST_FILES 數組(依然有效,但反對使用)。詳細資訊請參閱 POST 方法上傳。
$_ENV
執行環境送出至腳本的變量。類似于舊數組 $HTTP_ENV_VARS 數組(依然有效,但反對使用)。
$_REQUEST
經由 GET,POST 和 COOKIE 機制送出至腳本的變量,是以該數組并不值得信任。所有包含在該數組中的變量的存在與否以及變量的順序均按照 php.ini 中的 variables_order 配置訓示來定義。該數組沒有直接模拟 PHP 4.1.0 的早期版本。參見 。
******自 PHP 4.3.0 起, $_FILES 中的檔案資訊不再存在于 $_REQUEST 中。***** $_SESSION
目前注冊給腳本會話的變量。類似于舊數組 $HTTP_SESSION_VARS 數組(依然有效,但反對使用)。