從php 4.2.0版本開始中, php 指令 register_globals 的默認值為 off(在php.ini配置文件里). 這是 php 的一個主要變化。register_globals是干什么用的呢?它是php用來控制是否將egpcs (environment, get, post, cookie, server)變量是否注冊為全局變量的。
例如,對于 http://www.xx.php?var=2 這里的var,在為 on 時,你只需用 $var 即可,但在 off 時,就必須用 $_get["var"] 來接收了~ 這里的 $_get 就是一個php超全局變量數組。和它性質一樣的還有:
$globals
包含一個引用指向每個當前腳本的全局范圍內有效的變量。該數組的鍵標為全局變量的 名稱。從 php 3 開始存在 $globals 數組。
$_server
變量由 web 服務器設定或者直接與當前腳本的執行環境相關聯。等同于舊數組 $http_server_vars 數組,但和 $_server 不是一個變量,因為php處理它們的方式不同,下同。雖然$http_server_varst和下面的$http_*_vars仍然可以使用,但絕不推薦您再使用$http_*_vars.
$_get
經由 http get 方法提交至腳本的變量。例如由 url、表單的get方式 產生的變量。
使用方式:$_get["xx"]; //即$xx; 下同
$_post
經由 http post 方法提交至腳本的變量。例如由 表單的post方式 產生的變量。
使用方式:$_post["xx"];
$_cookie
經由 http cookies 方法提交至腳本的變量。 例如讀取cookie值的時候。
$_files
經由 http post 文件上傳而提交至腳本的變量。我的另一篇文章 對文件上傳處理過程的進一步說明 已經較詳細地介紹它的用法,這里不再說明。
$_env
執行環境提交至腳本的變量。
$_request
經由任何用戶輸入機制提交至腳本的變量,包括 get,post,cookie等方式,因此該數組并不值得信任。
$_session
存放session變量的數組。
你不必用session_regisger來注冊某個變量,用 $_session["xx"] 即包含有上述過程。
|
新聞熱點
疑難解答