PHP & XML

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 列表

<ul>
   <li>Braised Sea Cucumber
   <li>Baked Giblets with Salt
   <li>Abalone with Marrow and Duck Feet
</ul>

这不是一个有效的XML文档,因为没有与三个打开的<li>标签相匹配的关闭</li>标签。在XML文档中,每个打开的标签都必须关闭。

有效的XML的HTML列表

<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>

它将产生以下结果:

PHP & XML

注意 - 如果您有一个XML内容的文件,可以使用函数 simplexml_load_file(filename)

要查看XML解析函数的完整详情,请查看PHP函数参考。

生成XML文档

SimpleXML用于解析现有的XML文档,但无法使用它从头开始创建一个新的XML文档。

生成XML文档的最简单方法是构建一个与XML文档结构相对应的PHP数组,然后通过数组迭代,在适当的格式中打印每个元素。

示例

尝试以下示例:

<?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.

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程