Maison >développement back-end >Tutoriel XML/RSS >Premiers pas avec XML
Extensible Markup Language, un sous-ensemble du Standard Universal Markup Language, est un langage de balisage utilisé pour marquer les fichiers électroniques afin de les rendre structurels. Dans les ordinateurs électroniques, les balises font référence à des symboles d'information que les ordinateurs peuvent comprendre. Grâce à ces balises, les ordinateurs peuvent traiter diverses informations telles que des articles, etc. Il peut être utilisé pour marquer des données et définir des types de données. C'est un langage source qui permet aux utilisateurs de définir leur propre langage de balisage. Il est parfaitement adapté au transport sur le World Wide Web, offrant une approche unifiée pour décrire et échanger des données structurées indépendamment des applications ou des fournisseurs. Il s'agit d'une technologie multiplateforme et dépendante du contenu dans l'environnement Internet, et c'est également un outil efficace pour traiter des informations structurées distribuées aujourd'hui. Dès 1998, le W3C a publié la spécification XML1.0, Utiliser il pour simplifier le transfert d'informations sur les documents sur Internet.
En 1969, GML (Généralisé Langage de balisage Langage de balisage généralisé)---->1985année,SGML (Langage de balisage généralisé standardLangage de balisage généralisé standard)--- > ;1993 année, HTML (Langage de balisage hypertexteLangage de balisage hypertexte)--->1998 Année, XML(Extensible Markup LanguageExtensible Markup Language)
1, Extensible Markup Language est un langage de balisage très similaire au Hypertext Markup Language.
2. Il est conçu pour transmettre des données, pas pour afficher des données.
3, ses balises ne sont pas prédéfinies. Vous devez définir vous-même les étiquettes.
4, Il est conçu pour être auto-descriptif.
5, qui est la norme recommandée du W3C.
1. Il ne remplace pas le langage de balisage hypertexte.
2, C'est un complément au Hypertext Markup Language.
3, Il est conçu à des fins différentes du langage de balisage hypertexte :
4, Il est conçu pour transmettre et stocker des données, dont l'objectif est le contenu des données.
5. Le langage de balisage hypertexte est conçu pour afficher des données, l'accent étant mis sur l'apparence des données.
6, le langage de balisage hypertexte est conçu pour afficher des informations, alors qu'il est conçu pour transmettre des informations.
7 La meilleure description est la suivante : il s'agit d'un outil de transmission d'informations indépendant du logiciel et du matériel.
1, résout le problème de la transmission irrégulière des données.
2, peut très bien décrire les choses dans une structure arborescente.
3, peut être utilisé comme fichier de configuration.
PS : De nos jours, de nombreux langages et technologies utilisent le XML comme standard de transmission de données , donc une compréhension approfondie du XML équivaut à maîtriser un protocole général de transmission de données.
Document de référence : http://www.php.cn/
Cas :
<?xml version="1.0" encoding="UTF-8"?> <class> <stu id="a001"> <name>张三</name> <sex>男</sex> <age>20</age> </stu> <stu id="a002"> <name>李四</name> <sex>女</sex> <age>18</age> </stu> </class>
一个XML文件可分为如下几部分内容:
文档声明 、元素、属性、注释 、CDATA区 ,特殊字符 、处理指令(processing instruction)
基本语法:
<?xml version="1.0" encoding="UTF-8"?> <!-- 上面是文档声明 - -> <?xml-stylesheet type="text/css" href=”XML2.css”?> <!-- 上面是处理指令 - -> <根元素> <!-- 注释 - -> <![CDATA[ CDATA区,可以是任意字符 ]]> <元素 属性=”属性值”> <元素>元素内容</元素> <空元素/>> </元素> </class>
<?xml version="1.0" encoding=“编码方式" standalone="yes|no"?>
XML声明放在XML文档的第一行
XML声明由以下几个部分组成:
version - -文档符合XML1.0规范
encoding - -文档字符编码,比如”utf-8”
standalone - -文档定义是否独立使用
standalone="yes“
standalone=“no” 默认
PS:虽说现在XML出了2.0版了,但是现在大多还是用1.0版。
基本语法:
<元素>元素内容</元素> <元素/>
注意事项:
1、每个XML文档必须有且只有一个根元素。
2、根元素是一个完全包括文档中其他所有元素的元素。
3、根元素的起始标记要放在所有其他元素的起始标记之前。
4、根元素的结束标记要放在所有其他元素的结束标记之后。
5、XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下几种书写形式,例如:
包含标签体:3499910bf9dac5ae3c52d5ede73834851235db79b134e9f6b82c0b36e0489ee08ed
不含标签体的:3499910bf9dac5ae3c52d5ede73834855db79b134e9f6b82c0b36e0489ee08ed, 简写为:7d01d0a03a49fceb57d12197d8d196cb
6、一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许交叉嵌套 ,例如:
3499910bf9dac5ae3c52d5ede7383485hello a4b561c25d9afb9ac8dc4d70affff419world5db79b134e9f6b82c0b36e0489ee08ed0d36329ec37a2cc24d42c7229b69747a
7、对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理。
例如:
3499910bf9dac5ae3c52d5ede73834851235db79b134e9f6b82c0b36e0489ee08ed和3499910bf9dac5ae3c52d5ede7383485 123 5db79b134e9f6b82c0b36e0489ee08ed意义是完全不同的。
8、一个XML元素可以包含字母、数字以及其它一些可见字符,但必须遵守下面的一些规范:
1---区分大小写,例如,64e5601d0a941f4972a2954192bdae18和e388a4556c0f65e1904146cc1a846bee是两个不同的标记。
2---不能以数字或"_" (下划线)开头。
3---不能包含空格。
4---名称中间不能包含冒号(:)。
9、元素、标签、节点意义都是一样的。
基本语法
<元素 属性1=”属性值” 属性2=”属性值”>元素内容</元素>
注意事项:
1、属性值用双引号(")或单引号(')分隔(如果属性值中有',用"分隔;有",用'分隔)
2、一个元素可以有多个属性,它的基本格式为:
3、属性名称在同一个元素标记中只能出现一次
4、属性值不能包括83992e84119b8649428fe2de73af99ef, &之类的特殊字符,否则需要使用转义字符。
这个和HTML一样,都是c2a54aadee89294d3edc03e4891272d5,同样也不能注释嵌套,不能放在元素名中间。
有些内容可能不想让解析引擎解析执行,而是当作原始内容处理,用于把整段文本解释为纯字符数据而不是标记的情况。包含大量509d37b71e5ee94f7a50f124edbc8c3f、&或者"字符。CDATA区中的所有字符都会被当作元素字符数据的常量部分,而不是XML标记。
PS:CDATA区可以用于传递特殊字符,传递文件数据。可以通过将图片这类二进制文件以byte[]的形式放入CDATA区中,需要使用时在以byte[]的方式读出。
处理指令,简称PI (Processing Instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
处理指令必须以“0f7ea912b4bec2649ab2166088880186”作为结尾,XML声明语句就是最常见的一种处理指令。 例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。
案例:
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="XML2.css" type="text/css"?> <class> <student> <name>张三</name> <sex>男</sex> <age>20</age> </student> <student> <name>李四</name> <sex>女</sex> <age>18</age> </student> </class>
XML2.css
name { font-size: 20px; font-weight: bold; color: red; } sex{ font-size: 30px; font-weight: bolder; color: blue; } age{ font-size: 25px; font-weight: bolder; color: blue; }
1、XML必须有且仅有一个根元素
2、元素大小写敏感
3、元素不能以数字,下划线开头
4、属性值用引号
5、属性值如果有特殊字符要用实体表示
6、同一元素的属性必须唯一,属性值可以不唯一
7、非空元素标记必须成对
8、空标记要写关闭符号
9、元素必须正确嵌套
10、元素中可以包含字母、数字或者其它字符(支持中文)
11、元素中不能含空格
12、元素中不能含冒号(注:冒号留给命名空间使用)
以上就是XML入门的内容,更多相关内容请关注PHP中文网(www.php.cn)!