4 回答

TA貢獻1811條經驗 獲得超6個贊
PHP $_REQUEST是用于收集HTML表單提交的數據,PHP $_REQUEST屬于PHP的超級全局變量。
以下實例顯示了一個輸入字段(input)及提交按鈕(submit)的表單(form)。 當用戶通過點擊 "Submit" 按鈕提交表單數據時, 表單數據將發送至<form>標簽中 action 屬性中指定的腳本文件。
在這個實例中,我們指定文件來處理表單數據。如果你希望其他的PHP文件來處理該數據,你可以修改該指定的腳本文件名。 然后,我們可以使用超級全局變量 $_REQUEST 來收集表單中的 input 字段數據。
擴展資料:
PHP中預定義了幾個超級全局變量 ,這意味著它們在一個腳本的全部作用域中都可用。 你不需要特別說明,就可以在函數及類中使用。
1、$GLOBAL
$GLOBAL 是PHP的一個超級全局變量組,在一個PHP腳本的全部作用域中都可以訪問。$GLOBAL 是一個包含了全部變量的全局組合數組。變量的名字就是數組的鍵。
2、$_SERVER
$_SERVER 是一個包含了諸如頭信息(header)、路徑(path)、以及腳本位置(script locations)等等信息的數組。
這個數組中的項目由 Web 服務器創建。不能保證每個服務器都提供全部項目;服務器可能會忽略一些,或者提供一些沒有在這里列舉出來的項目。
3、$_REQUEST
PHP $_REQUEST 用于收集HTML表單提交的數據。
4、$_POST
PHP $_POST 被廣泛應用于收集表單數據,在HTML form標簽的指定該屬性:"method="post"
5、$_GET
PHP $_GET 同樣被廣泛應用于收集表單數據,在HTML form標簽的指定該屬性:"method="get"。

TA貢獻1752條經驗 獲得超4個贊
php中有$_request與$_post、$_get用于接受表單數據,當時他們有何種區別,什么時候用那種最好。
一、$_request與$_post、$_get的區別和特點
$_REQUEST[]具用$_POST[] $_GET[]的功能,但是$_REQUEST[]比較慢。通過post和get方法提交的所有數據都可以通過$_REQUEST數組獲得
二、$_post、$_get的區別和特點
1. get是從服務器上獲取數據,post是向服務器傳送數據。
2. get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個字段一一對應,在URL中可以看到。post是通過HTTP post機制,將表單內各個字段與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。
3. 對于get方式,服務器端用Request.QueryString獲取變量的值,對于post方式,服務器端用Request.Form獲取提交的數據。
4. get傳送的數據量較小,不能大于2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。
5. get安全性非常低,post安全性較高。
舉例:mypage?id=1這種就是GET方式傳值,可以用$_request和$_get接受傳值。

TA貢獻1831條經驗 獲得超9個贊
補充一點,不要用$_REQUEST來取變量,因為這跟php.ini里的配置有關系
; This directive describes the order in which PHP registers GET, POST, Cookie,
; Environment and Built-in variables (G, P, C, E & S respectively, often
; referred to as EGPCS or GPC). Registration is done from left to right, newer
; values override older values.
variables_order = "EGPCS"
如果同一個變量,既存在于get又存在于post,會取得get里的數據,因為我的G在P之前,EGPCS是個順序,容易造成程序有漏洞
- 4 回答
- 0 關注
- 1401 瀏覽
添加回答
舉報