Мне нужно вывести строку xml (входящую в веб-сервис в качестве параметра POST) непосредственно в базу данных Mysql. Столбец, в который я пишу, в настоящее время имеет тип «текст», хотя я также пробовал использовать blob.
Прямо сейчас, когда я сохраняю строку и получаю ее позже, используя sql, она возвращается в сериализованном формате, например:
a:1:{s:14:"<?xml_encoding";s:1502:"UTF-8?><record>
<nodes></nodes>
</record>";}
Принимая во внимание, что мне нужно проанализировать этот xml как объект simplexml, и, следовательно, он должен быть лучше сформирован.
Это то, что я делаю в коде:
Принять параметр Post в веб-сервисе
Сериализация и сохранение его в БД с использованием доктрины ORM, вроде
$ record-> xml_rec = serialize ($ _ POST)
Получить и повторить.
Как ни странно, если я произвожу сериализацию, а echo будет при повторном запуске, я получу массив Массив выглядит так после print_f
Array
(
[<?xml_encoding] => UTF-8?><record>
<nodes></nodes>
</record>
)
Все еще не разбирается с помощью simplexml.
Это проблема с хранилищем mysql или я что-то не так с параметрами POST? Я пытался htmlspecialchars, чтобы сохранить строку в БД, но подобные проблемы остаются.
любая помощь приветствуется, спасибо