欢迎来到天天文库
浏览记录
ID:63496110
大小:12.54 KB
页数:4页
时间:2021-08-24
《DOM基础及php读取xml内容操作的方法_》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、DOM基础及php读取xml内容操作的方法_DOM(DocumentObjectModel):文档对象模型。核心思想是:把xml文件看作是一个对象模型,然后通过对象的方式来操作xml文件。php对xml文档进行增删改查(curd)操作,具体分析如下:xml文档:class.xml代码如下:?xmlversion="1.0"encoding="utf-8"?classstudentinfo="美女"name小乔/namesex女/sexage20/age/studentstudentname周瑜/namesex男/sexage25/age/studen
2、t/classclass.xml对应的DOM树结构图DOM基础及php读取xml内容操作的方法三联php文件(对xml文档操作)查询操作案例:代码如下:?php//1、创建一个DOMDocument对象。该对象就表示xml文件$xmldoc=newDOMDocument();//2、加载xml文件(指定要解析哪个xml文件,此时dom树节点就会加载到内存中)$xmldoc-load("class.xml");//3、目标:猎取第一个同学的名字//3.1第一步,读取全部的同学$students=$xmldoc-getElementsByTagName(
3、"student");//方法getElementsByTagName:依据所给的节点名字(这里是student)查找相应的节点,返回DOMNodeList类型的对象,相当于取出了全部的同学。可以用var_dump($students)查看,并依据返回值查找手册,看其下面的属性与方法。echo"共有".$students-length."个同学br/";//3.2读取第一个同学$stu1=$students-item(0);//读取到第一个同学。返回值为DOMElement对象。挺直echo$stu1-nodeValue;则把name,sex,age
4、都输出。//3.3取出第一个同学的名字$stu1_name=$stu1-getElementsByTagName("name");//3.4读取到名字echo$stu1_name-item(0)-nodeValue;?留意点:(1)编码问题;(2)这里只是基础演示,比较麻烦,后面用到循环和函数来操作;(3)用var_dump(),查看变量的返回值是什么,再依据返回值到手册中查找该返回值下的属性与方法。(4)整个挨次下来,getElementByTagName()并不需要一层一层的读,事实上可以挺直读取到节点name的,而不需要先读取student(当
5、然,假如同一个student下,有多个name,就会出问题了,这里就需要学习新的学问点xpath)。所以上面这代码可以简洁改为:代码如下:?php//1、创建一个DOMDocument对象。该对象就表示xml文件$xmldoc=newDOMDocument();//2、加载xml文件(指定要解析哪个xml文件,此时dom树节点就会加载到内存中)$xmldoc-load("class.xml");//3、目标:猎取第一个同学的名字$stu=$xmldoc-getElementsByTagName("name");//挺直找到节点name$stu1=$s
6、tu-item(0);//item(1)时,可以取到周瑜echo$stu1-nodeValue;?更多信息请查看IT技术专栏...
此文档下载收益归作者所有