Синтаксический анализ XML в PHP с XMLReader - элементом смешанного содержимого - где мой текст? - PullRequest
1 голос
/ 07 июля 2010

У меня проблемы с анализом фрагмента простого текста; даже зацикливая все узлы с оператором print, ни один из них не содержит текста, который я написал в файле XML.

Вот спецификация элемента из DTD:

<!ELEMENT question (#PCDATA | choice)*>

А вот данные, которые я использую:

<question id="porridge" name="porridge" type="multiple">
 What is 1 + 2?
 <choice id="twelve" value="twelve">12</choice>
 <choice id="three" value="three" correct="true">3</choice>
 <choice id="banana" value="banana">Banana!</choice>
</question>

Первый узел в имеет тип XMLReader :: TEXT, но он пуст в соответствии с readOuterXML (). Как я могу получить на «Что такое 1 + 2?»

1 Ответ

0 голосов
/ 07 июля 2010

readOuterXML () перемещает текущий узел и не возвращает фактическое содержимое узла во всех случаях. Мой тестовый цикл прерывал остальную часть анализа.

...