Приветы. Столкнулся с такой проблемой – не могу разобрать "неформатированный" POST-запрос в PHP. Я привык работать с POST-запросами в которых есть пары ключ=значение: Код (Text): POST /action.php HTTP/1.1 Host: host.ru _key1_=_val1_;_key2_=_val2_; Такой запрос транслируется PHP в переменную $_POST как в ассоциативный массив: Код (Text): array(2) { ["_key1_"]=> string(6) "_val1_" ["_key2_"]=> string(6) "_val2_" } Всё верно. Но у меня задача разобрать вот такой POST-запрос: Код (Text): POST /action.php HTTP/1.1 Host: host.ru <-BEGIN= <-ACC= <login=abc> <password=qwerty> /-ACC> /-END> Как видно передающая сторона генерит данные в своём формате и мне нужно собрать парсер этой информации, но как мне получить доступ к этому POST'у как к простой строке? При таком запросе в переменную $_POST транслируется совсем не то что нужно: Код (Text): array(1) { ["<-BEGIN"]=> string(55) " <-ACC= <login=abc> <password=qwerty> /-ACC> /-END>" } Т.е. <-BEGIN= рассмативается как ключ... Резюмирую: Как мне получить доступ к POST-data напрямую в обход парсера "ключ=значение"?
Пхп для этого не предназначен Добавлено спустя 1 минуту 34 секунды: Ну кстати есть сырой ввод. Как же его Добавлено спустя 1 минуту 9 секунд: http://php.ru/manual/wrappers.html.php пробуйте
igordata, спасибо за совет. Получилось вот так: Код (Text): $rawPost = file_get_contents( "php://input" ); var_dump( $rawPost );