检测 PHP 中的请求类型(GET、POST、PUT 或 DELETE)

2022-08-30 05:45:50

如何检测 PHP 中使用了哪种请求类型(GET、POST、PUT 或 DELETE)?


答案 1

通过使用

$_SERVER['REQUEST_METHOD']

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
     // The request is using the POST method
}

有关更多详细信息,请参阅 $_SERVER 变量的文档


答案 2

PHP中的REST可以非常简单地完成。创建 http://example.com/test.php(概述如下)。将其用于 REST 调用,例如 http://example.com/test.php/testing/123/hello。这适用于开箱即用的Apache和Lighttpd,并且不需要重写规则。

<?php
$method = $_SERVER['REQUEST_METHOD'];
$request = explode("/", substr(@$_SERVER['PATH_INFO'], 1));

switch ($method) {
  case 'PUT':
    do_something_with_put($request);  
    break;
  case 'POST':
    do_something_with_post($request);  
    break;
  case 'GET':
    do_something_with_get($request);  
    break;
  default:
    handle_error($request);  
    break;
}

推荐