PHP数据接收变量$_GET、$_POST 、$_REQUEST区别
2015-05-26 15:58
736 查看
1、$_GET 变量
预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。
从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送信息的量也有限制。
$_GET 变量的安全性不如$_POST 。
实例
当用户点击 "Submit" 按钮时,发送到服务器的 URL 如下所示:
http://www.w3cschool.cc/welcome.php?fname=Peter&age=37
"welcome.php" 文件现在可以通过 $_GET 变量来收集表单数据了(请注意,表单域的名称会自动成为 $_GET 数组中的键):
何时使用 method="get"?
在 HTML 表单中使用 method="get" 时,所有的变量名和值都会显示在 URL 中。
注释:所以在发送密码或其他敏感信息时,不应该使用这个方法!
然而,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。
注释:HTTP GET 方法不适合大型的变量值。它的值是不能超过 2000 个字符的。
2、$_POST 变量
预定义的 $_POST 变量用于收集来自 method="post" 的表单中的值。
从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。
注释:然而,默认情况下,POST 方法的发送信息的量最大值为 8 MB(可通过设置 php.ini 文件中的 post_max_size 进行更改)。
实例
当用户点击 "Submit" 按钮时,URL 如下所示:
http://www.w3cschool.cc/welcome.php
"welcome.php" 文件现在可以通过 $_POST 变量来收集表单数据了(请注意,表单域的名称会自动成为 $_POST 数组中的键):
何时使用 method="post"?
从带有 POST 方法的表单发送的信息,对任何人都是不可见的,并且对发送信息的量也没有限制。
然而,由于变量不显示在 URL 中,所以无法把页面加入书签。
主要区别如下:
① 安全性 post>get
② 数据传输大小 [浏览器]post>get
③ 保存到收藏夹 get比较方便.
3、PHP $_REQUEST 变量
预定义的 $_REQUEST 变量包含了 $_GET、$_POST 和 $_COOKIE 的内容。
$_REQUEST 变量可用来收集通过 GET 和 POST 方法发送的表单数据。
$_REQUEST 变量既可以收集GET方法发送的数据,也可以接受POST方法接受的数据。
实例
注意事项:
1. 不要经常使用$_REQUEST,
2. 如果不确定_GET/POST
你接收数据时候,可以这样
预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。
从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送信息的量也有限制。
$_GET 变量的安全性不如$_POST 。
实例
<span style="font-size:18px;"><form action="welcome.php" method="get"> Name: <input type="text" name="fname"> Age: <input type="text" name="age"> <input type="submit"> </form></span>
当用户点击 "Submit" 按钮时,发送到服务器的 URL 如下所示:
http://www.w3cschool.cc/welcome.php?fname=Peter&age=37
"welcome.php" 文件现在可以通过 $_GET 变量来收集表单数据了(请注意,表单域的名称会自动成为 $_GET 数组中的键):
<span style="font-size:18px;">Welcome <?php echo $_GET["fname"]; ?>.<br> You are <?php echo $_GET["age"]; ?> years old!</span>
何时使用 method="get"?
在 HTML 表单中使用 method="get" 时,所有的变量名和值都会显示在 URL 中。
注释:所以在发送密码或其他敏感信息时,不应该使用这个方法!
然而,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。
注释:HTTP GET 方法不适合大型的变量值。它的值是不能超过 2000 个字符的。
2、$_POST 变量
预定义的 $_POST 变量用于收集来自 method="post" 的表单中的值。
从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。
注释:然而,默认情况下,POST 方法的发送信息的量最大值为 8 MB(可通过设置 php.ini 文件中的 post_max_size 进行更改)。
实例
<span style="font-size:18px;"><form action="welcome.php" method="post"> Name: <input type="text" name="fname"> Age: <input type="text" name="age"> <input type="submit"> </form></span>
当用户点击 "Submit" 按钮时,URL 如下所示:
http://www.w3cschool.cc/welcome.php
"welcome.php" 文件现在可以通过 $_POST 变量来收集表单数据了(请注意,表单域的名称会自动成为 $_POST 数组中的键):
<span style="font-size:18px;">Welcome <?php echo $_POST["fname"]; ?>!<br> You are <?php echo $_POST["age"]; ?> years old.</span>
何时使用 method="post"?
从带有 POST 方法的表单发送的信息,对任何人都是不可见的,并且对发送信息的量也没有限制。
然而,由于变量不显示在 URL 中,所以无法把页面加入书签。
主要区别如下:
① 安全性 post>get
② 数据传输大小 [浏览器]post>get
③ 保存到收藏夹 get比较方便.
3、PHP $_REQUEST 变量
预定义的 $_REQUEST 变量包含了 $_GET、$_POST 和 $_COOKIE 的内容。
$_REQUEST 变量可用来收集通过 GET 和 POST 方法发送的表单数据。
$_REQUEST 变量既可以收集GET方法发送的数据,也可以接受POST方法接受的数据。
实例
<span style="font-size:18px;">Welcome <?php echo $_REQUEST["fname"]; ?>!<br> You are <?php echo $_REQUEST["age"]; ?> years old.</span>
注意事项:
1. 不要经常使用$_REQUEST,
2. 如果不确定_GET/POST
你接收数据时候,可以这样
if($_SERVER['REQUEST_METHOD’]=="POST"){ $echo $_POST['名字']; }else if($_SERVER[’ REQUEST_METHOD’]=="GET"){ //用 _GET接收. }
相关文章推荐
- PHP中全局变量$_REQUEST、 $_GET、 $_POST、 $_COOKIE 的关系和区别
- PHP中全局变量$_REQUEST、 $_GET、 $_POST、 $_COOKIE 的关系和区别
- PHP中全局变量$_REQUEST、 $_GET、 $_POST、 $_COOKIE 的关系和区别 (转载)
- php中$_REQUEST、$_POST、$_GET的区别和联系小结
- PHP 超全局变量 $_GET 和 $_POST 用于收集表单数据(form-data)。
- php中$_request与$_post、$_get的区别
- 数据的提交与接收-get与post区别
- POST和GET的区别。PHP获取post数据的方法。
- $_request、$_post、$_get用于接受表单数据,当时他们有何种区别,什么时候用那种最好。
- php中$_REQUEST、$_POST、$_GET的区别和联系小结
- php中$_request与$_post、$_get的区别
- PHP 表单和用户输入、PHP $_GET、PHP $_POST、$_REQUEST 变量
- $_request与$_post、$_get用于接受表单数据的区别
- php中$_REQUEST、$_POST、$_GET的区别和联系小结
- php中$_REQUEST、$_POST、$_GET的区别和联系小结
- PHP中GET POST REQUEST区别
- PHP中接收send/POST/GET发送的数据
- php中的$_request与$_post、$_get区别
- php中GET POST REQUEST 的区别
- PHP中,$_request 、$_post 、$_get的区别