Заметил кое-что странное, когда присылаю на сервер данные в кодировке application/x-www-form-urlencoded у меня пробелы в ключах $_POST заменяются на нижнее подчеркивание. Я перепроверил, данные которые отправляются браузером полностью корректные и там все верно кодируется: пробелы в теле запроса закодированы как %20
Это особенность встроенного парсера или в php существуют какие-то ограничения для ключей массивов?
Если вдруг первое, то как бы пофиксить? Просто хотелось, чтобы все по красоте было, чтобы удобно.
Боюсь не получится, так как при получении POST запроса и успешного парсинга данных поток php://input автоматом очищается и из него уже ничего не считать.
Melkij, парсить самому это вариант конечно, но по время затратам поменять все на JSON быстрее, собственно я это уже сделал, так как возможность засылать JSON у меня и так заложена на фронте, а на бэке все решилось добавлением одной строки:
if (is_array($input = json_decode(file_get_contents('php://input'), true))) { $_POST = $input; }