PHP

PHP的超級全域變數

在PHP程式設計時,有些訊息是屬於網站本身的相關資訊或是一些由網站伺服器所提供出來的資訊,這些資訊是被儲放在超級全域變數(Superglobals)中,這些變數是由網頁伺服器所維護及更新,在程式中使用不需要任何的宣告以及設定,可以直接拿來使用,而它們的影響力也可以橫跨多個程式檔案。

這些全或變數均以全大寫的型式呈現,主要有以下幾個:

超級全域變數名稱主要功用
$GLOBAL屬於檔案等級的全域變數,在PHP程式中可以透過此變數進行設定及操作,此變數的內容可以在任一函數中存取到相同的變數內容。
$_SERVER目前的路徑、標頭、以及檔案位置相關資訊。
$_POST儲存POST請求的相關資訊。
$_GET儲存GET請求的相關資訊。
$_FILES用來接收上傳的檔案資料。
$_REQUEST用來提取送交後之表單資料參數。
$_ENV目前腳本所使用的環境變數。
$_COOKIE用來存取COOKIE
$_SESSION用來存取SESSION資訊

$GLOBAL的範例程式如下:

<?php 
	$x = 100;
	$y = 200;
	function myfunc() {
		$x = 50;
		$y = 50;
		echo $GLOBALS["x"] + $GLOBALS["y"] . "<br/>";
		echo "The sum for local variables:";
		echo $x+$y;
	}

	myfunc();
?>

上述的程式在一開始的時候定義了2個變數,此2變數在myfunc()函數中要利用$GLOBALS才能夠存取得到。如果沒有使用$GLOBALS的話,那麼直接取用$x和$y時得到的就是在函數內所定義的區域變數。

上述程式執行的結果如下:

300
The sum for local variables:100

PHP的超級全域變數 有 “ 1 則迴響 ”

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s