博主信息
博文 63
粉丝 2
评论 0
访问量 192118
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
$_REQUEST[]、$_POST[]、$_GET[]的区别
书声的博客
原创
1318人浏览过

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来取变量,因为这跟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是个顺序,容易造成程序有漏洞



注意事项:
1.不要经常使用$_REQUEST,
2.如果不确定_GET/POST你接收数据时候,可以这样

 

view plain copyif($_SERVER['REQUEST_METHOD’]=="POST"){  
    $echo $_POST['名字'];  
}else if($_SERVER[’ REQUEST_METHOD’]=="GET"){  
    //用 _GET接收.  }

 


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学