如题所述
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接受传值。
一、$_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接受传值。
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2018-02-26
$_REQUEST不是一个函数,它是一个超全局变量,里面包括有
$_GET
$_POST
$_COOKIE 但是用$_REQUEST()比较$_GET, $_POST, $_COOKIE执行效率相对较低!本回答被网友采纳
$_GET
$_POST
$_COOKIE 但是用$_REQUEST()比较$_GET, $_POST, $_COOKIE执行效率相对较低!本回答被网友采纳
第2个回答 推荐于2016-02-16
$_REPUEST 是接收了 $_GET $_POST $_COOKIE 三个的集合
可以直接 print_r($_REQUEST) 看看效果
使用方法:
例: $username = $_REQUEST['username'];
echo $username;
可以直接 print_r($_REQUEST) 看看效果
使用方法:
例: $username = $_REQUEST['username'];
echo $username;
第3个回答 2012-05-07
$_REQUEST不是一个函数,它是一个超全局变量,里面包括有$_GET $_POST $_COOKIE的值
第4个回答 2019-08-07
1、打开php.ini找到request_order,默认值为:request_order = "GP",其中"G"代表get,"P"代表post.
2、如果你的post和get有相同的参数name,使用$_REQUEST['name'],获取到的是post的值;将request_order 改为request_order = "PG",那么获取到的将是get的值;
3、哪些说“$_REPUEST 是接收了 $_GET $_POST $_COOKIE 三个的集合”的人太不负责了,request_order默认是没有C的,也就是默认$_REQUEST是不会包含_COOKIE的值的,如果需要可改为request_order = "GPC",但得注意参数名不要重复。