PHP初學之超全域性變數

2021-07-10 03:07:00 字數 1592 閱讀 9301

超全域性變數

變數分三種;1、全域性變數(普通全域性變數),函式外定義的變數,在函式裡不可以呼叫

2、區域性變數,函式裡定義的變數,在函式裡可以使用,在函式外不可以

3、超全域性變數,整個**也都可以肆無忌憚的呼叫,

九大超級全域性變數;

$_get            //位址列上的引數。位址列上的介面後面有乙個鍵值對,key是php裡定義的,value是使用者寫的,$_get的作用就是把這個value從位址列裡拿出來,然後程式再進行操作

$_post

//接post型的表單引數,這個引數是乙個陣列,其他的於$_get相近

$_request

//預設情況下包含了$_get、$_post和$_cookie的陣列,比如,在寫程式是我們閒麻煩,不想區分$_get和$_post,這個時候就可以用$_request來代替,即$_request是$_get、$_post和$_cookie的乙個並集

$_files

//檔案上傳時用

$_cookie

//$_session

//使用者登陸時用

$_enu

$_sever

//伺服器還有訪客的一些資訊

$_globals

//所有變數的乙個登錄檔

一、$_get  ;

$id=$_get['id'];//中括號裡的id就是位址列上的介面後面鍵值對里的key,如  這個介面裡的id就是中括號裡的id,後面的123就是對應的值,$_get['id']的作用就是拿到了123這個值

echo $id;//這裡拿到了123這個值,然後對這個值進行操作

二、$_post;它接收到的資料是表單型別的乙個陣列。這個陣列裡可能包含若干個資料

首先,定義乙個表單,這個表單裡有若干個引數,還有每個引數對應的型別

其次,寫一段功能**,用來接收傳遞過來的資料,形式是$_post[表單引數]。這樣就可以拿到表單裡的資料了

然後,在客戶端建立乙個陣列,打包用post方法發給伺服器

最後,接收資料,

三、$_request;

懶人專用,他會自動把接收到的資料生成乙個集合,不管是從get方法的位址列傳過來的資料,還是post打包過來的陣列,

分別;1、$_get,單一的資料傳遞,如果有多個引數,就要在位址列生成多個引數的鍵值對,傳遞的資料都能在位址列顯示,所以安全係數不高

2、$_post,陣列裡可以有很多數,所以他可以很簡單的就傳遞多個資料,而且,他不需要走位址列,故安全係數高

3、$_request,不多說,我以後就用他了

四、$_sever;也是乙個陣列,裡面存放的是執行指令碼的當前伺服器資訊和當前執行的環境資訊,也就是裡面存的是各種系統資訊,引數有很多,不用背,用的時候在手冊裡找也可以,而且用的也不是很多。

五、$_globals;是在頁面內,所有全域性變數的乙個名單,在$_globals中,可以找到所有宣告過的變數,因為它是超全域性變數,所有我們通過$_globals可以操作普通的全域性變數,

附加; 函式和全域性變數,並不是水貨不容

1、通過引用傳參(&),能影響全域性變數

2、通過global宣告,也能直接使用外部的變數,但是不建議使用

3、直接操作超級全域性變數($_globals)呼叫全域性變數

PHP 超全域性變數

globals 包含乙個引用指向每個當前指令碼的全域性範圍內有效的變數。該陣列的鍵名為全域性變數的名稱。從 php 3 開始存在 globals 陣列。server 變數由 web 伺服器設定或者直接與當前指令碼的執行環境相關聯。類似於舊陣列 http server vars 陣列 依然有效,但反對...

PHP超全域性變數

php 4.2.0以及後續版本中,php指令register globals的預設off.this是乙個重大的改變php.let register globals的關閉會影響到預定義變數的例子,在全球範圍內的validity.for設定,以獲得document root的值,將必須使用 server...

php超全域性變數

globals get post get post form表單中通過get或者post傳遞進來的引數都會儲存在這兩個陣列中,我們可以通過鍵來獲取使用者提交的資訊。然後做進一步處理。注 form表單裡面使用者提交的資訊一定要記得給name值。input type text password radi...