使用PHP4.2.0及以後版本的注意事項

來源:互聯網
上載者:User

  從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"] 即包含有上述過程。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。