我正在阅读这样的代码:
if ($_SERVER["REQUEST_METHOD"] == "POST") {
echo "Hello ". $_POST['alias'];
}
但是既然我们已经使用$ _POST,这意味着它必须由post方法使用,为什么我们仍然需要使用“$ _SERVER [”REQUEST_METHOD“] ==”POST“?另一个问题是,如果我们使用post和get方法提交大量表单,那么$ _SERVER [“REQUEST_METHOD”]的值是什么,它是否只保存最新的方法值?
答案 0 :(得分:0)
根据PHP文档http://php.net/manual/en/reserved.variables.server.php $_SERVER["REQUEST_METHOD"]
:
使用哪种请求方法来访问页面;即'GET','HEAD', 'POST','PUT'。
这意味着,只有只是一个信息为您提供数据的提交方式。
$_POST
仅包含通过POST方法提交的数据:
通过传递给当前脚本的关联变量数组 使用application / x-www-form-urlencoded或时的HTTP POST方法 multipart / form-data作为请求中的HTTP Content-Type。
因此,最好使用$_REQUEST
,因为它是:
一个关联数组,默认包含$ _GET的内容, $ _POST和$ _COOKIE。
这意味着您没有注意数据的提交方式。