Для извлечения содержимого тела HTTP-запроса из запроса PUT в PHP нельзя использовать суперглобальный тип, например $_POST
или $_GET
или $_REQUEST
, поскольку ...
Не существует суперглобального PHP для данных запроса PUT или DELETE
Вместо этого вам нужно вручную извлечь тело запроса из STDIN
или использовать поток php://input
.
$_put = file_get_contents('php://input');
Суперглобальный $_GET
будет по-прежнему заполняться в случае запроса PUT или DELETE. Если вам нужен доступ к этим значениям, вы можете сделать это обычным способом. Я не знаком с тем, как jquery отправляет переменные с запросом DELETE, поэтому, если $_GET
не заполнено, вы можете вместо этого попробовать вручную выполнить синтаксический анализ переменной $_SERVER['QUERY_STRING']
или использовать пользовательский параметр "action", как предложено @ShankarSangoli. для поддержки устаревших браузеров, которые не могут использовать javascript для отправки запроса DELETE.