【发布时间】:2016-07-20 13:39:34
【问题描述】:
我创建 xml 文件的尝试已接近完成,但我有一两个障碍。
通过 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 标记?
【问题讨论】:
标签: php xml domdocument