Php表单中GET和POST的异同点以及何时选用
- 2017-02-24 20:48:22
- 3,666 次阅读
- 0
在form表单提交数据时候,method属性有两种方式,一种是post,另一种是get。那么它们之间又有何异同点,究竟什么时候选用才合适,下面就简单介绍一下。
相同点是:
GET和POST都可以创建数组(例如,array( key=> value, key1 => value1, key2=> value2,…))。此数组包含键名和值,其中的键名是表单控件的名称,而值是来自用户的输入数据。
GET和POST被视作$_GET和$_POST。它们都是超全局变量,这j就意味着对它们的访问无需考虑作用域,也无需任何特殊代码,就能能够从任何函数、类或文件中访问它们。
不同点是:
$_GET是通过URL参数传递到当前脚本的变量数组。
$_POST是通过HTTP POST传递到当前脚本的变量数组。
何时选用GET?
通过GET方法从表单发送的信息对任何人都是可见的(所有变量名和值都显示在URL 中)。GET对所发送信息的数量也有限制。限制在大于2000个字符。不过,由于变量显示在URL 中,把页面添加到书签中也更为方便。
GET可用于发送非敏感的数据,但绝不能使用GET来发送密码或其他敏感信息!
何时选用POST?
通过POST方法从表单发送的信息对其他人是不可见的(所有名称/值会被嵌入HTTP请求的主体中),并且对所发送信息的数量也无限制。
另外POST支持高阶功能,比如在向服务器上传文件时可以进行multi-part二进制输入。
不过,由于变量未显示在URL中,也就无法将页面添加到书签。
总之,post请求方式要比get请求方式安全的多,如果包含一些重要的信息,或者在做数据的添加,修改,删除操作时,建议使用post的方式;如果是在做查询统计时候,建议使用get方式比较好。
Howdy! I could have sworn I’ve visited this blog before but after browsing through a
few of the posts I realized it’s new to me. Anyways, I’m certainly
pleased I discovered it and I’ll be book-marking it and checking
back often!
Thanks for one’s marvelous posting! I seriously enjoyed reading it, you will be a great author.I will be sure
to bookmark your blog and will eventually come back in the foreseeable future.
I want to encourage you to ultimately continue your great work, have a nice morning!