PHP & XML
XML 是一种看起来很像 HTML 的标记语言。XML 文档是纯文本,其中包含由 < 和 > 包围的标签。XML 和 HTML 之间有两个重要的区别−
- XML 不定义必须使用的特定标签。
- XML 对文档结构非常讲究。
XML 比 HTML 给予你更多的自由。HTML 有一些特定的标签:<a></a>
标签用于环绕链接,<p>
用于开始段落等等。然而,XML 文档可以使用任何你想要的标签。在电影评分周围放置 <rating></rating>
标签,在某人身高周围放置 <height></height>
标签。因此,XML 让你可以自定义标签。
XML 对文档结构非常严格。HTML 允许你对某些开启和闭合标签进行自由操作,但 XML 不是这样。
不是有效 XML 的 HTML 列表
这不是一个有效的XML文档,因为没有与三个打开的<li>
标签相匹配的关闭</li>
标签。在XML文档中,每个打开的标签都必须关闭。
有效的XML的HTML列表
解析XML文档
PHP 5的新 SimpleXML 模块使解析XML文档变得简单。它将XML文档转换为一个提供结构化访问XML的对象。
要从存储在字符串中的XML文档创建一个SimpleXML对象,将字符串传递给 simplexml_load_string() 。它会返回一个SimpleXML对象。
示例
尝试以下示例 –
它将产生以下结果:
注意 - 如果您有一个XML内容的文件,可以使用函数 simplexml_load_file(filename) 。
要查看XML解析函数的完整详情,请查看PHP函数参考。
生成XML文档
SimpleXML用于解析现有的XML文档,但无法使用它从头开始创建一个新的XML文档。
生成XML文档的最简单方法是构建一个与XML文档结构相对应的PHP数组,然后通过数组迭代,在适当的格式中打印每个元素。
示例
尝试以下示例:
它将产生以下结果 −