面向PHP开发人员的XML第1部分: PHP XML开发15分钟快速入门
2008-11-19 22:22:31 来源:WEB开发网DOM 扩展
文档对象模型(DOM)是表示 HTML 和 xml(标准化越来越近了) 文档的 W3C 标准对象集合,将这些对象结合起来的标准模型以及访问和操纵它们的标准接口。很多厂商支持 DOM 作为其私有数据结构和 API 的接口,由于开发人员对其比较熟悉,给 DOM 模型增加了不少权威色彩。DOM 很容易理解和使用,因为其内存结构模仿了原始 xml(标准化越来越近了) 文档。为了把信息传递给应用程序,DOM 创建和 xml(标准化越来越近了) 文件元素树完全相同的对象树,每个 xml(标准化越来越近了) 元素都用树中的一个节点表示。DOM 是基于树的解析器。因为 DOM 要构造整个文档树,要花费大量的内存和处理器时间。因此,性能问题决定了使用 DOM 很难处理大型文档。本文中主要把 DOM 扩展用于导入 Simplexml(标准化越来越近了) 格式(作为字符串)和输出 DOM 格式的 xml(标准化越来越近了)(作为 xml(标准化越来越近了) 文件)或者相反。
Simplexml(标准化越来越近了)
我们选择 Simplexml(标准化越来越近了) 扩展解析 xml(标准化越来越近了) 文档。Simplexml(标准化越来越近了) 扩展需要 PHP5 并包括和 DOM 的互操作性,以便编写 xml(标准化越来越近了) 文件和内置的 XPath 支持。Simplexml(标准化越来越近了) 最适合简单的、类似记录的数据,比如从同一个应用程序其他部分传递来的 xml(标准化越来越近了) 文档或字符串。如果 xml(标准化越来越近了) 文档不是很复杂,嵌套不太深,没有混合内容,使用 Simplexml(标准化越来越近了) 要比 DOM 简单得多,就像其名字所说的那样。如果使用已知的文档结构就更可靠。
简单的例子
这些例子使用 DOM 和 Simplexml(标准化越来越近了) 处理较小的、一般的 xml(标准化越来越近了) 文件。
使用 DOM
DOM 是在浏览器中使用的、用 JavaScript 操作的 W3C DOM 规范。方法都是一样的,因此可以使用熟悉的编码技术。清单 2 示范了使用 DOM 创建 xml(标准化越来越近了) 字符串和 xml(标准化越来越近了) 文档并设置格式以便查看。
清单 2. 使用 DOM
<?php
//Creates xml(标准化越来越近了) string and xml(标准化越来越近了) document using the DOM
$dom = new DomDocument('1.0');
//add root - <books>
$books = $dom->appendChild($dom->createElement('books'));
//add <book> element to <books>
$book = $books->appendChild($dom->createElement('book'));
//add <title> element to <book>
$title = $book->appendChild($dom->createElement('title'));
//add <title> text node element to <title>
$title->appendChild($dom->createTextNode('Great American
Novel'));
//generate xml(标准化越来越近了)
$dom->formatOutput = true; // set the formatOutput attribute of
domDocument to true
// save xml(标准化越来越近了) as string or file
$test1 = $dom->savexml(标准化越来越近了)(); // put string in test1
$dom -> save('test1.xml(标准化越来越近了)'); // save as file
?>
更多精彩
赞助商链接