Моя попытка создать xml-файл почти завершена, но у меня есть одна или две ошибки.Создайте правильный формат XML с помощью php
данные извлекается из БД через mysql_connect()
$sql = "SELECT `entity_id`,`name` FROM `table`
Нужный результат:
<?xml version="1.0" encoding="utf-8"?>
<content>
<item>
<id>1</id>
<name><![CDATA[name1]]</name>
</item>
<item>
<id>2</id>
<name><![CDATA[name2]]</name>
</item>
</content>
Теперь я пытался сделать это с помощью DOMDocument, но я не могу получить отступ правильно
$doc = new DOMDocument('1.0', 'utf-8');
$ele = $doc->createElement('content');
while ($row = mysql_fetch_assoc($res)) {
$ele = $doc->createElement('id');
$ele->nodeValue = $row['entity_id'];
$doc->appendChild($ele);
$ele = $doc->createElement('name');
$ele->nodeValue = $row['name'];
$doc->appendChild($ele);
};
$doc->appendChild($ele);
$doc->save('MyXmlFile.xml');
, но это выходы:
<?xml version="1.0" encoding="utf-8"?>
<id>1</id>
<name>name1</name>
<id>2</id>
<name>name2</name>
Как поместить результаты на уровень ребенка? (основная проблема), и после этого мне нужно выяснить, как обернуть тег CDATA вокруг текстовых данных?
Используйте [XMLWriter] (http://php.net/manual/en/book.xmlwriter.php) – RiggsFolly