Итак, я написал реализацию REST API, используя mod_rewrite и PHP. Я принимаю строку запроса через тело запросов HTTP DELETE (... коллективный стон?). Аргументы о мудрости обоих предыдущих утверждений в стороне, я обнаружил, что PHP не анализирует тело запроса DELETE автоматически (т. е. $_POST пуст, несмотря на то, что строка запроса, закодированная в форме, появляется в теле запроса). Меня это особо не удивило. Что меня удивило, так это то, что я не смог найти встроенную функцию PHP для разбора строки запроса?? Я просто что-то упустил из виду? Я могу сделать что-то вроде:
public function parseQS($queryString, &$postArray){
$queryArray = explode('&', $queryString);
for($i = 0; $i < count($queryArray); $i++) {
$thisElement = split('=', $queryArray[$i]);
$postArray[$thisElement[0]] = htmlspecialchars(urldecode($thisElement[1]));
}
}
... просто кажется странным, что для этого не было бы встроенного PHP. Кроме того, я подозреваю, что мне не следует использовать htmlspecialcharacters и urldecode для очистки значений, закодированных в форме... это другой вид кодирования, но у меня также возникают проблемы с определением, какую функцию PHP я должен использовать для декодирования данных, закодированных в форме. .
Любые предложения будут оценены.