欢迎来到天天文库
浏览记录
ID:9745754
大小:81.50 KB
页数:12页
时间:2018-05-07
《如何使用phpdom创建动态xml文件》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、如何使用PHPDOM创建动态XML文件>>教育资源库当处理基于XML应用程序时,开发者经常需要建立XML编码数据结构。例如,L状态模板,服务器请求XML语句,以及基于运行时间参数的客户响应。尽管XML数据结构的构建比较费时,但如果使用成熟的PHPDOM应用程序接口,一切都会变得简单明了。本文将向你介绍PHPDOM应用程序接口的主要功能,演示如何生成一个正确的XML完整文件并将其保存到磁盘中。创建文档类型声明一般而言,XML声明放在文档顶部。在PHP中声明十分简单:只需实例化一个DOM文档类的对象并赋予它
2、一个版本号。查看程序清单A:程序清单A<?php//createtype$dom=neent("1.0");//displayumentinbroentinbro->saveXML();?>请注意DOM文档对象的saveXML()方法。稍后我再详细介绍这一方法,现在你只需要简单认识到它用于输出XML文档的当前快照到一个文件或浏览器。在本例,为增强可读性,我已经将ASCII码文本直接输出至浏览器。在实际应用中,可将以text/XML头文件发送到浏览器。如在浏览器中查看输出,你可看到如下代码:<
3、?xmlversion="1.0"?>添加元素和文本节点XML真正强大的功能是来自其元素与封装的内容。幸运的是,一旦你初始化DOM文档,很多操作变得很简单。此过程包含如下两步骤:对想添加的每一元素或文本节点,通过元素名或文本内容调用DOM文档对象的createElement()或createTextNode()方法。这将创建对应于元素或文本节点的新对象。通过调用节点的appendChild()方法,并把其传递给上一步中创建的对象,并在XML文档树中将元素或文本节点添加到父节点。以下范例将清楚地演示这2步
4、骤,请查看程序清单B。程序清单B<?php//createtype$dom=neent("1.0");//displayumentinbroent$root=$dom->createElement("toppings");$dom->appendChild($root);//createchildelement$item=$dom->createElement("item");$root->appendChild($item);//createtextnode$text=$dom->createT
5、extNode("pepperoni");$item->appendChild($text);//saveanddisplaytreeecho$dom->saveXML();?>这里,我首先创建一个名字为<toppings>的根元素,并使它归于XML头文件中。然后,我建立名为<item>的元素并使它归于根元素。最后,我又创建一个值为“pepperoni”的文本节点并使它归于<item>元素。最终结果如下:<?xmlversion="1.0"?><toppings>?<
6、item>pepperoni</item></toppings>如果你想添加另外一个topping,只需创建另外一个<item>并添加不同的内容,如程序清单C所示。程序清单C<?php//createtype$dom=neent("1.0");//displayu1234下一页>>>>这篇文章来自..,。mentinbroent$root=$dom->createElement("toppings");$dom->appendChild($root);//createchilde
7、lement$item=$dom->createElement("item");$root->appendChild($item);//createtextnode$text=$dom->createTextNode("pepperoni");$item->appendChild($text);//createchildelement$item=$dom->createElement("item");$root->appendChild($item);//createanothertextnode$te
8、xt=$dom->createTextNode("tomato");$item->appendChild($text);//saveanddisplaytreeecho$dom->saveXML();?>以下是执行程序清单C后的输出:<?xmlversion="1.0"?><toppings>?<item>pepperoni</item>?<item>tomato</item></toppings>
此文档下载收益归作者所有