1.3:PHP与XML

0X00 万能传输数据格式--XML

1.PHP解析XML的两种格式

(1).通过php dom来进行解析XML(主要实现增删改等操作)

(2).通过php simpleXML解析XML(主要实现查询操作)

2.XML执行解析流程

当系统执行XML时系统会执行以下步骤:

(1).首先在内存中开辟一块内存空间

(2).载入XML文件到内存中,并形成XML数结构

3.XML树结构--DOM模型

XML代码

4.DOM型分类

标准DOM型(CSS,JAVASCRIPT)

非标准DOM型(PHP)

0X01 PHP DOM型解析XML数据

1.PHP DOM模型解析XML的三个关键词

面,串,点

2.php DOM模型中的查操作(几步走)

(1).开辟一块存储空间,形成“面”

(2).载入XML文件到内存中,形成DOM树结构,形成“串”

(3).获取同级兄弟节点,形成“串”

(4).通过查询条件,获取相应的“点”

3.PHP DOM 模型常用的四大类

document object mode

DOMDocument(面)

DOMNodelist(串)

DOMNode (点)

DOMElement(点)

 直接解析XML文档,或者说调用,读取操作

参数:version:XML版本号

encoding:编码格式 UTF-8

4.load方式载入到XML内存,形成dom树结构

mixed DOMDocument::load(string$filename)

filename:XML 文件名称

5.获取同级兄弟节点,形成串

DOMNodeList DOMDocument::getElementsByTagName(string name)

通过节点名称获取类        name:节点名称

串中两个常用属性和方法

DOMNodelist length:输出当前XML页面多个节点信息

DOMNode DOMNodelist::item 通过index节点指引,获取节点信息

通过nodeNAME或nodeValue获取节点信息

nodeName:节点名称

nodeValue:节点值

6.PHP DOM模型中的查操作

 

6.属性的查询

1.开辟内存空间,形成 ‘面’

2.载入XML文件到内存中,形成DOM树

3.获取同级兄弟节点,形成串

4.通过item获取指定节点信息,并读取属性。

要用到下列三个方法:

bool DOMElement ::hasAttribute(string $name)//是否具有指定的name属性(变量name)

bool DOMNode ::hasAttributes(void) //判断是否具有属性

string DOMElement ::getAttribute(string $name) //获取指定名称的属性

 

 输出后

0X01 dom型增删改查步骤

1.开辟内存空间

2.载入XML文件到内存,形成DOM树

3.创建新节点

4.创建子节点

5.追加子节点到父节点

6.把内存中信息保存到XML中

用到的知识点:

创建节点:DOMElement DOMDocument::createElement(string $name [string $value]) //创建新节点

参数:  name:节点名称

            value :节点参数,节点的值

追加节点:DOMNOde DOMNOde::appendChild(DOMnode $NEWnode) //追加子节点

参数: newnode:新节点

保存内存:int DOMDocument::save(string $filename) //保存信息到XML文件中

filename:文件名称

 

2.PHP DOM中修改操作

分类:值操作,节点操作

原文地址:https://www.cnblogs.com/sssbug/p/11498879.html