PHP超級全域性變數總結

2021-09-01 20:40:47 字數 2474 閱讀 2373

php有9個預定義變數陣列,分別總結如下:

1、$_server

$_server超級全域性變數包含由web伺服器建立的資訊,它提供了伺服器和客戶配置及當前請求環境的有關資訊。根據伺服器不同,$_server中的變數值和變數個數會有差別,不過一般都可以找到cgi1.1規範中定義的變數。其中包括:

$_server[ 'http_referer' ] ;引導使用者到達當前位置的頁面的url ;

$_server[ 'remote_addr『 ] ; 客戶ip位址 ;

$_server[ 』request_uri『 ]; url的路徑部分。如果url是那麼uri就是/blog/apache/index.html。

$_server[ 'http_user_agent' ] ; 客戶的使用者**,一般會提供作業系統和瀏覽器的有關資訊。

2、$_get

$_get超級全域性變數包含使用get方法傳遞的引數的有關資訊。如果請求url為 就可以使用$_get超級全域性變數訪問如下變數:

$_get[ 'cat' ] = "apache" ;

$_get[ 'id' ] = "157" ;

預設情況下,要訪問通get方法傳遞的變數,$_get超級全域性變數是唯一的途徑。

3、$_post

$_post超級全域性變數包含用post方法傳遞的引數的有關資訊。

通過指令碼subscribe.php,就可以使用下面的post變數:

$_post[ 'email' ] = "[email protected]" ;

$_post[ 'pswd' ] = "rainyday" ;

$_post[ 'subscribe' ] = "subscribe!" ;

與$_get一樣,在預設情況下,$_post超級全域性變數是訪問post變數的唯一途徑。

4、$_cookie

$_cookie超級全域性變數儲存了通過http cookie傳遞到指令碼的資訊。這些cookie一般是由以前執行的php指令碼通過php函式setcookie ( ) 設定的。例如,假設使用 setcookie ( )儲存了乙個名為 example.com、值為ab2213的cookie。以後就可以通過呼叫$_cookie[ ' example.com' ]來獲得這個值。

5、$_files

$_files超級全域性變數包含通過post方法向伺服器上傳的資料的有關資訊。這個超級全域性變數與其他的變數有所不同,它是乙個二維陣列,包含5個元素。第乙個下標標示表單的檔案上傳元素名;第二個下標是五個預定義下標之一,這些下標描述了上傳檔案的某個屬性:

$_files[ 'upload-name' ][ 'name' ]; 從客戶端向伺服器上傳檔案的檔名;

$_files[ 'upload-name' ][ 'type' ]; 上傳檔案的mime型別,這個變數是否賦值取決於瀏覽器的功能。

$_files[ 'upload-name' ][ 'size' ];上傳檔案的大小(以位元組為單位);

$_files[ 'upload-name' ][ 'tmp_name' ]; 上傳之後,將此檔案移到最終位置之前賦予的臨時名。

$_files[ 'upload-name' ][ 'error' ]; 上傳狀態碼。儘管這個變數的名為 error ,但實際上在成功的情況下也會填寫這個變數。它有五個可能的值:

■ upload_err_ok 檔案成功上傳

■ upload_err_ini_size 檔案大小超出了 upload_max_filesize 指令所指定的最大值。

■ upload_err_form_size 檔案大小超出了max_file_size 隱藏表單域引數(可選)指定的最大值。

■ upload_err_partial 檔案只上傳了一部分

■ upload_err_no_file 上傳表單中沒有指定檔案

6、$_env

$_env超級全域性變數提供php解析所在伺服器環境的有關資訊。此陣列中的變數包括:

$_env[ 'hostname' ] 伺服器的主機名

$_env[ 'shell' ] 系統 shell

7、$_request

$_request超級全域性變數是乙個全能選手,它記錄了通過各種方法傳遞給指令碼的變數,特別是get ,post 和 cookie 。 這些變數的順序不依賴於它們在傳送指令碼中出現的順序,而是依賴於 variables_order 配置指令所指定的順序。建議少用這個超級變數,因為它不夠安全。

8、$_session

$_session 超級全域性變數包含與所有會話有關的資訊。註冊會話資訊能為你提供便利,這樣就能在整個**中引用這些會話資訊,而無需通過get或post顯示的傳遞資料。

9、$globals

$globals 超級全域性變數陣列可以認為是超級全域性變數的超集,包含全域性作用域內的所有變數。執行下面的**可以檢視$globals 中所有的變數。

print '

' ;

print_r ($globals);

print '

' ;

PHP超級全域性變數總結

php有9個預定義變數陣列,分別總結如下 1 server server超級全域性變數包含由web伺服器建立的資訊,它提供了伺服器和客戶配置及當前請求環境的有關資訊。根據伺服器不同,server中的變數值和變數個數會有差別,不過一般都可以找到cgi1.1規範中定義的變數。其中包括 server ht...

PHP超級全域性變數總結

php有9個預定義變數陣列,分別總結如下 1 server server超級全域性變數包含由web伺服器建立的資訊,它提供了伺服器和客戶配置及當前請求環境的有關資訊。根據伺服器不同,server中的變數值和變數個數會有差別,不過一般都可以找到cgi1.1規範中定義的變數。其中包括 server ht...

php超級全域性變數

php用了那麼久一些基礎東西並不是很了解,今天開始就陸陸續續的學習一下。php中超級全域性變數 globals 所有全域性變數陣列 server 伺服器環境變數陣列 get get傳遞給指令碼的變數陣列 post post傳給指令碼的變數陣列 cookie cookie變數陣列 files 上傳檔案...