странная строка из socket_read в php

Игорь Исаков

Есть устройство, общение с которым организовано по xml-протоколу.
Есть socketwrite, с помощью которого я шлю команды устройству и оно их корректно (в соответствие с посланой командой) выполняет.
Есть socket_read, который получает ответ о выполнении или невыполнении устройством команды и вот здесь вот возникает проблема, а именно:
1. var_dump($answer) говорит нам о том, что ответ это строка длинной, ну например 192 символа, содержащая " " (один пробел);
2. echo htmlspecialchars($answer) выводит ответ таким, каким он должен быть по мануалу;
3. обращение к конкретным символам по индексу echo $answer[0] ($answer предварительно проходит через htmlcpecialchars()) возможно только один раз (последующие обращения игнорятся, как-будто в переменной нет ничего. Помимо ответа, который должен быть по мануалу, выясняется, что там еще куча спецсимволов, которые в строке не отображаются, но делают невозможным использование strpos().

Собственно вопрос - что со всем этим делать, чтобы можно было перевести в удобоваримый формат и использовать дальше (нужно получить обычную строку без спецсимволов, которую можно будет подвергнуть strpos или сравнению на худой конец).
На текущий момент спасают только регулярки, благо мне нужны из строки только цифры.

Игорь Исаков 11 месяцев назадСпасибо 0
1 чел.