请问,php中的$_REQUEST是什么意思啊?

2024-12-27 10:20:50
推荐回答(4个)
回答1:

PHP $_REQUEST是用于收集HTML表单提交的数据,PHP $_REQUEST属于PHP的超级全局变量。

以下实例显示了一个输入字段(input)及提交按钮(submit)的表单(form)。 当用户通过点击 "Submit" 按钮提交表单数据时, 表单数据将发送至

标签中 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"。    

参考资料:百度百科——超级全局变量

回答2:

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接受传值。

回答3:

这是php的超全局变量,用来向服务器发起请。详见:网页链接

rickysilk已经说的很好了,另外推荐使用$_POST,它比$_GET安全。

回答4:

补充一点,不要用$_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是个顺序,容易造成程序有漏洞