引入
xml数据格式最重要的功能就是数据传输
xml数据格式主要的用途有哪些?
程序之间的数据传输通讯、配置文件config.xml、存储数据,充当小型数据库data.xml
特点:规范数据格式,使数据具有结构性,易读易处理
什么是xml
xml指的是,可扩展性标记语言;
xml被发明的目的是传输和存储数据,而不是展示数据;
xml的标签必须自定义,但是在写标签名的时候一定要有含义;
xml是w3c推举的数据传输格式
自己写一段xml:
xml和HTML有哪些不一样?
1.HTML标签不能自定义,xml标签只能自定义;
2.HTML语法要求不严格,xml语法要求极其严格,必须是成对标签;
3.xml用来传输和存储数据
语法规则:
xml必须有根节点;
根节点就是其他所有节点的父级节点;
xml头声明:不强制要求,可有可无,但是建议写;
所有xml元素必须是成对标签;
标签名大小写敏感(区分大小写);
标签不能交叉;
书写注意点
xml注释的规范是这样的:
<!—xml注释内容 -->
xml的转义规范是这样的,下面是五个在XML文件中预定义好的实体:
比如不应该像下面那样书写代码:
<message>if salary < 1000then</message>
而要将字符"<" 转换成实体,像下面这样:
<message>if salary < 1000then</message>
元素属性:
-
属性规则:一个标签可以有多个属性,属性的值必须使用引号
引起来;
-
命名规则:数字字母下划线,数字不能开头;
-
属性就是表示标签自身的一些额外信息;
xml中属性就是鸡肋(食之无味,弃之有味),在解析xml数据时,属性会带来额外的解析代码(多了一步,比较麻烦)
CDATE
CDATE内容不解析
注意:特殊字符较少时,使用实体特换,较多时使用CDATE,CDATE必须大写
PHP解析xml
xml是一种数据传输格式,当PHP接收到的数据就是一段xml的时候,我们的PHP该怎么处理xml数据呢?
在PHP5版本以后,其提供了一个非常强大的类库SimpleXML类库,专门用于实现对xml文档的解析操作
xml解析原理:
//simplexml_load_file解析xml文档,返回PHP对象
PHP解析xml后返回对象的注释:
遍历xml数据
添加节点
//对象中的addChild方法创建节点,并给创建后的节点添加内容
若修改
则3.1xml数据也会随之更改: