PHP和XML
XML是一种标记语言,看起来很像HTML。XML文档是纯文本文件,其中包含由<和>分隔的标签。XM…
XML是一种标记语言,看起来很像HTML。XML文档是纯文本文件,其中包含由<
和>
分隔的标签。XML和HTML之间有两大区别 –
- XML没有定义您必须使用的特定标签集合。
- XML对文档结构非常挑剔。
XML为您提供了比HTML更多的自由。HTML具有一定的标记集合:<a>
</a>
标记围绕链接,<p>
开始段落等等。但是,XML文档可以使用任何您想要的标签。将<rating>
</
标签放在电影评级周围,
rating><height>
</height>
标签围绕某人的身高。因此XML给你选择设备你自己的标签。
XML在文档结构方面非常严格。HTML可以让你在打开和关闭标签时快速松动。但是XML不是这种情况。
HTML列表不是有效的XML
<ul> <li>Braised Sea Cucumber <li>Baked Giblets with Salt <li>Abalone with Marrow and Duck Feet </ul>
这不是有效的XML文档,因为没有与<li>
标签匹配的</li>
标签。XML文档中的每个打开的标签都必须关闭。
HTML列表是有效的XML
<ul> <li>Braised Sea Cucumber</li> <li>Baked Giblets with Salt</li> <li>Abalone with Marrow and Duck Feet</li> </ul>
解析XML文档
PHP 5的新 SimpleXML 模块很容易解析XML文档。它将XML文档转换为提供对XML的结构化访问的对象。
要从存储在字符串中的XML文档创建SimpleXML对象,请将该字符串传递给 simplexml_load_string()
。它返回一个SimpleXML对象。
例
试试下面的例子
<html> <body> <?php $note=<<<XML <note> <to>Gopal K Verma</to> <from>Sairamkrishna</from> <heading>Project submission</heading> <body>Please see clearly </body> </note> XML; $xml=simplexml_load_string($note); print_r($xml); ?> </body> </html>
它会产生以下结果 –
注 – 如果 文件中 包含XML内容,则可以使用函数 simplexml_load_file(文件名) 。
有关XML解析函数的完整详细信息,请参阅PHP函数参考。
生成一个XML文档
SimpleXML适用于解析现有的XML文档,但不能用它从头开始创建一个新文档。
生成XML文档的最简单方法是构建一个PHP数组,其结构与XML文档的结构相同,然后遍历数组,以适当的格式打印每个元素。
例
试试下面的例子 –
<?php $channel = array('title' => "What's For Dinner", 'link' => 'http://menu.example.com/', 'description' => 'Choose what to eat tonight.'); print "<channel>n"; foreach ($channel as $element => $content) { print " <$element>"; print htmlentities($content); print "</$element>n"; } print "</channel>"; ?>
它会产生以下结果 –
http://menu.example.com/ Choose what to eat tonight.
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!