Blogger Information
Blog 20
fans 0
comment 0
visits 33339
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
使用PHP解析XML数据
陈文鹏的博客
Original
891 people have browsed it

XML描述一部***的信息

小山

张一山

爱代码,爱生活]]>

周冬雨

小雨

游览器游览效果:

图片3.png


XML数据解析原理图

图片4.png


对元素(节点)进行增删改查

header("content-type:text/html;charset=utf-8");

$xml=simplexml_load_file("11.xml");

echo "

";

print_r($xml);

echo "

";

echo "


";

//给根节点添加一个子节点,名字叫stu1

$stu=$xml->addChild("stu1");

//以下是给节点添加属性和属性值

$stu->addChild('name','大白');

$stu->addChild('age','男');

$stu->addChild('author','托梦');

//销毁根节点的这个名叫stu的子节点

unset($xml->stu);

$xml->asXML("11.xml");

 

 ?>

预览效果:

图片5.png

对属性的操作

①、查询一个标签的属性

图片6.png

②、添加属性

图片7.png

③、修改属性的值

图片9.png

④、删除属性

图片10.png


接口的引用

接口地址:

http://php.weather.sina.com.cn/xml.php?city=%B1%B1%BE%A9&password=DJOYnieT8234jlsK&day=0

1、接口类型:HTTP GET请求

参数说明:

city :要查询城市的名称,文本要进行格式转换,转换为utf-8格式且数据需要使用urlencode进行转码

password :密钥,固定

day :0代表要查询当天的天气情况

2、接口调用的具体实现

第一步:使用simplexml_load_file(),来读取接口地址,得到SimpleXMLElement对象。

第二步:通过SimpleXMLElement对象组合自己想要的结果即可。

图片11.png

页面效果:

图片12.png

Xpath语言

XPath是一门在 XML 文档中查找信息的语言。

XPath可用来在 XML 文档中对元素和属性进行遍历。

而且Xpath并不仅仅应用于XML数据查询,其在很多语言中(PHP、Java、.NET以及Javascript),都可以广泛使用。

2、Xpath语言详解

①、使用绝对路径进行检索(/person/hero)

使用斜线/打头的都属于绝对路径,从根元素开始找。

图片13.png

页面效果:

图片14.png

使用xpath的绝对路径来查找hero所有的信息:

图片15.png

页面效果:

图片16.png

②、使用相对路径(//hero)

使用双斜线//方式的都属于相对路径,可以不必从根节点查找。只查找元素节点

图片17.png

页面效果:

图片18.png

③、使用星号*来检索数据

星号 * 表示查找指定路径后的所有节点,包括属性节点。

图片19.png

页面效果:

图片20.png

④、使用方括号[]来检索数据

[]里面可以对查询到的节点进行筛选。[]里面具体可以填写子节点、属性、还可以使用xpath中的函数

图片21.png

4.1使用[@attr]符号来检索节点的属性

图片22.png

加@表示属性,不加@表示子节点。

模糊查询的例子:

图片23.png


翻译案例:

如果用MySQL设计数据库:

create table dict(

id int primary key auto_increment,

cn varchar(30),

en varchar(45)

)

如果用xml存放中英文对照数据:

你好

hello

good

图片24.png

2、设计界面

图片25.png

图片26.png

3、查询程序

图片27.png

将查询结果写到html中:

图片28.png

4、添加程序

页面效果:

图片29.png

图片30.png

写程序完成添加新词的功能:

图片31.png

Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post