关于xml学习的一点思考与总结

xml可用于服务器的配置,比如密码、用户,比如数据库的连接信息参数,相关程序的参数设置,这样用户在使用的时候,就只需要配置相关的xml文件,即可以对其进行解析。xml也可以当作小型数据库,文本txt、xml都可以当做数据库,只是文本、xml比数据库访问速度更快。而数据库更安全而已。

现在我们主要学习的是对xml结构的一些学习和对xml进行解析。

前面学习了用mini-xml开源库对其进行解析,主要用于c、c++应用程序。这里我们使用了php对其生成及其相应的解析。


php DOM编写学生信息管理,在线英汉词典。

xml文档的要求:

1、必须要有一个根元素。即一个完全包含其他元素的元素。

2、概念: <name first(属性名)=" "(属性值)> liu(元素值) </name(元素、或称标签、节点)>

3、xml注释语法 :<!--    -->,亦可以用css来修饰显示。


在本次php程序中出现了显示乱码问题,主要问题:程序中定义编码方式,php.ini中的编码、和软件入notepad++ 、editplus保存文件时的编码需要一致,推荐为utf-8。同理其他地方出现乱码问题,也可从这三方面考虑。

php技术对xml的增删改查:DOM(document object model)、simplexml、xpath三种技术即可。

DOM技术的核心思想是把一个xml文件看成一个对象模型,然后通过对象的方式来操作xml文件。


name节点元素属性,head这行为元素节点。abc这行为文本节点。

php 查询:

load加载xml文件,形成一个xml树如:$xmldoc=load("index.xml);。$stus=xmldoc->getElementByTagName("学生"),返回标签为学生的元素返回为一个节点列表。

此处可以用var_dump($xmldoc)来查看这个$xmldoc有哪些属性或者方法。$stus返回的是一个节点列表,那么我们便可以用var_dump来查看返回的属性或者方法。


此处我们可以用$stu1=$stus->item(0);取出第一个学生。

然后学生的下面也是一个节点树,这样我们可以取出学生的名字。

$stu1_name=$stu1->getElementByTagName("名字");  

取出名字:echo $stu1_name->item(0)->nodeValue;


对于这里的取值操作。我们可以设计一个函数来简化操作。

读取:


删除节点只需要从其父节点remove即可。非必须要读取根节点。

在修改上述第二个学生下面的介绍元素的时候,必须要getElementByTagName("介绍")->item(0);虽然只有一个介绍,但是仍然需要加item



总结:很多图书馆借来的书本只讲了调用这个函数去这么做,但是并没有讲为什么需要这么做,以及原理是什么。导致书上和网上没有的找不到的例子就不知道怎么去实现。通过韩顺平老师的课程,学会了看函数的手册,主要是看函数拥有的属性和方法,以及返回值所有的属性和方法,这样才能更加灵活的学一会百,知道为什么要这么做。故以后一定要多查手册,很多书讲的很浅显,要在其讲的基础上思考为什么可以这么做!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值