欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP中$_GET与$_POST的区别

程序员文章站 2022-03-14 16:53:02
...
$_GET与$_POST

post和get是指:页面提交的两种方式

get:参数都体现在url上,可以用于翻页,简单查询,get只能接收2k以下的内容,所以有局限性,另外由于内容是可见的,安全性就下降了,

post:用于页面表单 提交,上传文件,这些操作。大小没有限制,也不会在地址栏上显示。

$_POST 变量

$_POST 变量是一个数组,内容是由 HTTP POST 方法发送的变量名称和值。

$_POST 变量用于收集来自 method=”post” 的表单中的值。

从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制

为什么使用 $_POST?

通过 HTTP POST 发送的变量不会显示在 URL 中。

变量没有长度限制。

不过,由于变量不显示在 URL 中,所以无法把页面加入书签。

$_GET 变量

$_GET 变量用于收集来自 method=”get” 的表单中的值,直观的的就是浏览器中可以看到的参数,比如我在百度搜索“wordpress”的时候,我请求的url就是http://www.baidu.com/s?ie=utf-8&bs=wordpress&f=8&rsv_bp=1&wd=wordpress&inputT=0,那么’?’后面的参数都是可以用 $_GET 获取,各个参数是以’&’作为分隔符的。

$_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值。

从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多 100 个字符),所以参数的长度不是无限的,但是基本都能满足我们的要求了。

为什么使用 $_GET?

注释:在使用 $_GET 变量时,所有的变量名和值都会显示在 URL 中。所以在发送密码或其他敏感信息时,不应该使用这个方法。不过,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。

注释:HTTP GET 方法不适合大型的变量值;值是不能超过 100 个字符的。

****$_POST和$_GET的区别:

1.前者可以在网址的栏目上是看不到传送的内容的,而后者呢是是可以在网址的栏目是看到内容的

2.Get 方式需要使用 Request.QueryString 来取得变量的值;而 Post 方式通过 Request.Form 来访问提交的内容

3.前者传输的内容的大小比较大,安全性比较高,执行效率稍微低一些;后者的上传大小比较小,安全性低,执行的效率会计较高一点

4、 Get 方式提交数据,会带来安全问题,比如一个登陆页面,通过 Get 方式提交数据时,用户名和密码将出现在 URL 上,如果页面可以被缓存或者其他人可以访问客户这台机器,就可以从历史记录获得该用户的帐号和密码,所以表单提交建议使用 Post 方法;Post 方法提交的表单页面常见的问题是,该页面如果刷新的时候,会弹出一个对话框

Request.Form和Request.QueryString两个接收参数来源不同,前者是接收从表单Form来的参数,后者是从URL来的参数。

Request.Form:获取以POST方式提交的数据(接收Form提交来的数据);

Request.QueryString:获取地址栏参数(以GET方式提交的数据)

PHP中$_GET与$_POST的区别

以上就是PHP中$_GET与$_POST的区别的详细内容,更多请关注其它相关文章!

相关标签: POST php 区别