выражение новой строки в XML - PullRequest
0 голосов
/ 09 августа 2011

Я создаю XML в PHP Zend Framework, используя DOM Class.Чтобы вставить новую строку в текстовый узел элемента XML, передается выражение &lt;<BR>&gt;.Но когда я передаю строку с &lt;<BR>&gt;, сгенерированный XML будет иметь &amp;lt;BR&amp;gt; вместо действительного выражения &lt;<BR>&gt;.и поэтому при отображении данных из XML вместо новой строки будет напечатано <BR>.

Как предотвратить изменение выражения &lt;<BR>&gt;?

1 Ответ

1 голос
/ 09 августа 2011

<BR> - это HTML для «разрыва строки», а не XML. Если бы вы вставили его в формате XML, то у вас просто был бы начальный тег для неизвестного элемента BR и без конечного тега. Это может привести к тому, что документ будет неправильно сформирован, и анализаторы XML будут выдавать критическую ошибку при обнаружении следующего тега close (который не будет </BR>).

Если вы хотите выразить новую строку как разметку, то вам нужно:

  1. Убедитесь, что приложение XML, которое вы используете, имеет разметку для представления новой строки
  2. Создайте эту разметку как элемент (хотя часто есть способы для вставки фрагмента необработанного XML в документ, они являются хорошим способом случайного разбиения, а вставка серии текстовых узлов и элементов безопаснее).
...