在php中,预定义变量"$_REQUEST"可以用于获取from表单通过POST或者GET方式所提交的数据,也可以用于获取COOKIE信息;它是一个数组,包含了"$_GET","$_POST"和"$_COOKIE"的所有信息。
php 预定义变量$_REQUEST
在实际开发过程中,我们不知道 form 表单通过哪种方式提交数据时,该怎么获取数据呢?
PHP 中提供了一个 $_REQUEST 全局变量,它是一个包含了 $_POST、$_GET 和 $_COOKIE 的数组,数组结构与 $_POST 和 $_GET 类似。
也就是说不管是使用 POST 还是使用 GET 方式提交的数据,都可以使用 $_REQUEST 来获取,甚至可以使用 $_REQUEST 来获取 COOKIE 的信息。在 PHP5.3 中引入 request_order 属性,我们可以通过在 php.ini 配置文件中修改 request_order 属性的值,来控制 $_REQUEST 中包含的内容。
request_order 属性的值可以是 G、P 和 C 这三个大写的英文字母,它们分别代表 GET、POST 和 COOKIE。默认情况下 request_order 属性的默认值为request_order="GP",并不包含 C,也就是说 $_REQUEST 中并不包含 COOKIE 的信息,如果我们希望 $_REQUEST 中包含 COOKIE 的话,需要将其修改为request_order="GPC"。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表单提交</title>
</head>
<body>
<p>------------------------get------------------------</p>
<form action="index.php"method="get">
姓名:<input type="text"name="name"placeholder="请输入姓名"><br>
性别:<input type="radio"name="sex"value="男">男
<input type="radio"name="sex"value="女">女<br>
爱好:<input type="checkbox"name="hobby[]"value="read">阅读
<input type="checkbox"name="hobby[]"value="travel">旅游
<input type="checkbox"name="hobby[]"value="sport">运动
<input type="checkbox"name="hobby[]"value="internet">上网<br>
职业:<select name="job">
<option value="coder">程序员</option>
<option value="teacher">教师</option>
<option value="doctor">医生</option>
<option value="other">其它</option>
</select><br>
<input type="submit"value="提交">  <input type="reset"
value="重置">
</form>
<p>------------------------post------------------------</p>
<form action="index.php"method="post">
姓名:<input type="text"name="name" placeholder="请输入姓名"><br>
性别:<input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女<br>
爱好:<input type="checkbox" name="hobby[]" value="read">阅读
<input type="checkbox" name="hobby[]" value="travel">旅游
<input type="checkbox" name="hobby[]" value="sport">运动
<input type="checkbox" name="hobby[]" value="internet">上网<br>
职业:<select name="job">
<option value="coder">程序员</option>
<option value="teacher">教师</option>
<option value="doctor">医生</option>
<option value="other">其它</option>
</select><br>
<input type="submit" value="提交">  <input type="reset" value="重置">
</form>
</body>
</html>
<?php
if(!empty($_REQUEST)){
echo
'提交成功!<br><pre>';
var_dump($_REQUEST);
}
?>
运行上面的代码,不论是选择哪种提交方式,使用 $_REQUEST 都可以成功接收到表单传递的信息。
以上就是php中$_REQUEST的用法的详细内容