XML教程

浏览3277
更新时间2025-07-30

XML 文档必须有根元素

XML 文档必须包含一个根元素,该元素是所有其他元素的父元素

<root>
  <child>
    <subchild>.....</subchild>
  </child>
</root>

在此例中,<note> 是根元素:

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>George</to>
  <from>John</from>
  <heading>Reminder</heading>
  <body>Don't forget the meeting!</body>
</note>

XML 序言(XML Prolog)

这一行称为 XML 序言

<?xml version="1.0" encoding="UTF-8"?>

XML 序言是可选的。如果存在,则必须位于文档的第一行。

XML 文档可以包含国际字符,例如挪威语 øæå 或法语 êèé。

为了避免错误,您应该指定所使用的编码,并将 XML 文件保存为 UTF-8。

UTF-8 是 XML 文档的默认字符编码。

您可以在我们的字符集教程中进行学习字符编码。

提示:UTF-8 也是 HTML5、CSS、JavaScript、PHP 和 SQL 的默认编码。

所有 XML 元素都必须有结束标签

在 XML 中,省略结束标记是非法的。所有元素都必须有结束标签:

<p>This is a paragraph.</p>
<br />

注意:XML 序言没有结束标签!这不是错误。序言不属于XML本身的组成部分。它不是 XML 元素,也不需要关闭标签。

XML 标签区分大小写

XML 标签区分大小写。标签 <Letter> 与标签 <letter> 不同。

开始和结束标签必须使用相同的大小写:

<message>This is correct</message>

注释:打开标签和关闭标签通常被称为开始标签和结束标签。不论您喜欢哪种术语,它们的概念都是相同的。

XML 元素必须正确嵌套

在 HTML 中,您可能会看到没有正确嵌套的元素:

<b><i>This text is bold and italic</b></i>

在 XML 中,所有元素必须正确地相互嵌套:

<b><i>This text is bold and italic</i></b>

在上面的例子中,正确嵌套的意思是:由于 <i> 元素是在 <b> 元素内打开的,那么它必须在 <b> 元素内关闭。

XML 属性值必须加引号

与 HTML 类似,XML 也可拥有属性(名称/值对)。

在 XML 中,XML 的属性值须加引号:

<note date="12/11/2007">
  <to>George</to>
  <from>John</from>
</note>

实体引用

在 XML 中,一些字符拥有特殊的意义。

如果你把字符 "<" 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。

这样会产生 XML 错误:

<message>if salary < 1000 then</message>

为了避免这个错误,请用实体引用来代替 "<" 字符:

<message>if salary < 1000 then</message>

在 XML 中,有 5 个预定义的实体引用:

&lt; < 小于
&gt; > 大于
&amp; & 和号
&apos; ' 单引号
&quot; " 引号

注释:在 XML 中,只有字符 "<" 和 "&&quot; 确实是非法的。> 是合法的,但是用 > 来代替它是一个好习惯。

XML 中的注释

在 XML 中编写注释的语法与 HTML 的语法很相似:

<!-- This is a comment -->

注释中间不允许有两个破折号:

<!-- This is an invalid -- comment -->

XML 中保留空白

HTML 会把多个连续的空格字符裁减(合并)为一个,在 XML 中,文档中的空格不会被删节:

XML:	Hello           George

HTML:	Hello George

XML 将新行存储为 LF

在 Windows 应用程序中,换行通常以一对字符来存储:回车符 (CR) 和换行符 (LF)。这对字符与打字机设置新行的动作有相似之处。

Unix 和 Mac OSX 使用 LF。

旧的 Mac 系统使用 CR。

XML 将新行存储为 LF。

格式良好的 XML

符合上述语法规则的 XML 文档被称为“格式良好”的 XML 文档。

相关视频

更多

免费

php8,我来也
初级php8,我来也

321849次学习

收藏

免费

Thinkphp6.0正式版视频教程
中级Thinkphp6.0正式版视频教程

382470次学习

收藏

免费

细说PHP第一季
中级细说PHP第一季

282865次学习

收藏

免费

简单聊聊PHP创业那点事
初级简单聊聊PHP创业那点事

13418次学习

收藏
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号