- PHP教程
- PHP-主页
- PHP - 简介
- PHP-环境设置
- PHP - 语法概述
- PHP - 变量类型
- PHP - 常量
- PHP - 运算符类型
- PHP - 决策
- PHP - 循环类型
- PHP-数组
- PHP-字符串
- PHP - 网络概念
- PHP - 获取和发布
- PHP - 文件包含
- PHP - 文件和 I/O
- PHP - 函数
- PHP-Cookie
- PHP-会话
- PHP - 发送电子邮件
- PHP-文件上传
- PHP - 编码标准
- 高级PHP
- PHP - 预定义变量
- PHP-正则表达式
- PHP - 错误处理
- PHP - 错误调试
- PHP - 日期和时间
- PHP 和 MySQL
- PHP 和 AJAX
- PHP 和 XML
- PHP——面向对象
- PHP - 面向 C 开发人员
- PHP - 适合 PERL 开发人员
- PHP 表单示例
- PHP-表单介绍
- PHP - 验证示例
- PHP - 完整表格
- PHP框架作品
- PHP-框架工程
- PHP - 核心 PHP 与 Frame Works
- PHP 设计模式
- PHP - 设计模式
- PHP 函数参考
- PHP - 内置函数
- PHP 有用资源
- PHP - 问题与解答
- PHP - 有用的资源
- PHP - 讨论
PHP 和 XML
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 文档中的每个打开的标签都必须关闭。
有效 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>
它将产生以下结果 -
注意-如果文件中有 XML 内容,则可以使用函数simplexml_load_file( filename) 。
有关 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.
