理解 $_POST 和 $_SERVER['REQUEST_METHOD'] == 'POST'
开发者向 Snipplr 提交的内容遭到批评使用 $_SERVER['REQUEST_METHOD'] == 'POST' 而不是 $_POST。虽然请求方法方法看起来逻辑上合理,但了解两者之间的区别非常重要。
$_POST 包含通过 POST HTTP 请求方法传输到服务器的数据。该数据可通过 $_POST 数组访问,并可用于处理表单提交和其他基于 POST 的输入。
另一方面,$_SERVER['REQUEST_METHOD'] 提供有关所使用的 HTTP 请求方法的信息由客户。通过检查请求方法是否为“POST”,您可以验证请求是否是使用 POST 方法传输的。但是,仅此条件并不能保证 $_POST 数组中存在 POST 数据。
考虑空 POST 请求的场景。在这种情况下,虽然请求是使用 POST 方法发出的,但不会包含任何数据。检查请求方法(if ($_SERVER['REQUEST_METHOD'] == 'POST'))将返回 true,但查询 $_POST 将导致空数组。
最终,选择使用 $_POST和 $_SERVER['REQUEST_METHOD'] == 'POST' 取决于预期目的。如果您的重点只是验证请求方法,那么 $_SERVER['REQUEST_METHOD'] == 'POST' 就足够了。但是,如果您需要处理 POST 数据,直接访问 $_POST 数组很重要。
以上是$_POST 与 $_SERVER['REQUEST_METHOD'] == 'POST':何时使用哪个?的详细内容。更多信息请关注PHP中文网其他相关文章!