說是常用的,可是在實際工程中有幾個會常用呢?
你難道會在生產環境下使用$_get|$_post去直接獲取變數麼?肯定不會的。
到時對於面試的話,還是可以一部分的考察你的基礎知識的掌握,不過我感覺題目含金量並不大
不說廢話了,先看一下答案
明天開乙個題目,叫做get和post的區別。
關於cookie和sission的控制也會在之後的題目中涉及到。
關於files檔案的也會有特別的章節去梳理。
那麼想在就談談_request 和 globals 和_server他們的使用
預定義的 $_request 變數包含了 $_get、$_post 和 $_cookie 的內容。
有人會問了,這麼方便的東西,我為什麼不用呢?
因為越是容易的東西越可能出現一些問題,比較隱晦。
乙個是字段定義模糊,你都不知道是怎麼來的資料,乙個是字段重名了,get和post都有,它會用哪個?
很多人在使用$_request的時候,都把$_cookie給忘掉了,認為$_request是將$_get和$_post結合的陣列。$_request是什麼,哪個優先,其實是根據php.ini的variables_order引數確定的,預設情況下是"egpcs"。
看一下php.ini
其中幾個字母(egpcs)對應如下: environment, get, post, cookie, server。這些字母的出現順序,表明了資料的載入順序。從三種預設配置來看,相對順序均是gp
,也就是說只要有post引數進來,那麼它就會覆蓋同名的get引數。
不但需要配置正確,也需要正確使用,可能在其他方面有一些小作用,比如防注入,但是平常更應該注意,使用具有語義化的標籤和提取資料
寫**的時候,不要求方便,嚴格要求自己,才能寫出更健壯的程式。
globals
global 關鍵字 使用全域性變數
先說結論:在物件導向中,很少使用了已經,缺點也很明顯,定義過多全域性變數,難以維護,管理,等等。
$globals 獲取所有的全域性變數
$_server
很強大!但是越強大的函式就越應該謹慎使用。
能力越大,責任越大,就是這個意思。
常用超全域性變數詳解
引用全域性作用域中可用的全部變數 自己設定 server 這種超全域性變數儲存關於報頭 路徑和指令碼位置的資訊。server php self 返回當前執行指令碼的檔名。server gateway inte ce 返回伺服器使用的 cgi 規範的版本。server server addr 返回當前...
PHP 常用超全域性變數
globals 是php的乙個超級全域性變數組,在乙個php指令碼的全部作用域中都可以訪問。globals 是乙個包含了全部變數的全域性組合陣列。變數的名字就是陣列的鍵。server 是乙個包含了諸如頭資訊 header 路徑 path 以及指令碼位置 script locations 等等資訊的陣...
php的超全域性變數
php的超全域性變數如下圖 所有的超全域性變數都是陣列型別,並且php已經幫我們定義好了,下面重點介紹幾個 get 用來儲存get方式提交的資料 print r get post 用來儲存post提交的資料 request 儲存既有get方式提交又有post方式提交的資料 globals 在乙個ph...