时间:2021-07-01 10:21:17 帮助过:17人阅读
输出
<pictures>
<picture>
<id>1</id>
<name>pic 1</name>
</picture>
<picture>
<id>2</id>
<name>pic 2</name>
</picture>
<picture>
<id>3</id>
<name>pic 3</name>
</picture>
</pictures>
二、我使用的php创建:
1. 定义一个DOM对象: $dom = new DomDocument('1.0');
2. 添加子元素:$dom->appendChild($dom->createElement("pictures"))
内存中的原型是:<pictures></pictures>
继续往里边加子元素:*->appendChild($dom->createElement("picture"));
继续加: **->appendChild($dom->createElement("id"));
不加子元素了,加节点: ***->appendChild($dom->createNode("1"))
上面的*代表上上一行的代码;这样一来就可以写成一行:
$dom->appendChild($dom->createElement("pictures"))->appendChild($dom->createElement("picture"))
->appendChild($dom->createElement("id"))->appendChild($dom->createNode("1"));
现在内存中应该是这样的:<pictures><picture><id>1</id></picture></pictures>
显然里要求还远,很容易看懵的。
因此一般这么写: $pictures = $dom->appendChild($dom->createElement("pictures"));
$picture = $pictures->appendChild($dom->createElement("picture"));
$id = $picture->appendChild($dom->createElement("id"));
$id->appendChild($dom->createNode("1"));
下面还可以接着创建name节点:
$name = $picture->appendChild($dom->createElement("name"));
$name->appendChild($dom->createNode("pic 1"));
接下来还要接着创建picture节点:
$picture = $pictures->appendChild($dom->createElement("picture"));
其实这些麻烦的事可以写个for循环来实现。
生成xml文件:
$dom->formatOutput = true;//设置格式化