PHP基于XMLWriter操作xml的方法分析
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP基于XMLWriter操作xml的方法分析,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2641字,纯文字阅读大概需要4分钟。
内容图文
![PHP基于XMLWriter操作xml的方法分析](/upload/InfoBanner/zyjiaocheng/274/b97a19c5adce4fb1a3c1c21a1e4da82c.jpg)
本文实例讲述了PHP基于XMLWriter操作xml的方法。分享给大家供大家参考,具体如下:
接着昨天的这次再来学习一种读写xml的方式,这种方式主要围绕XMLWriter和XMLReader进行。前者用于生成xml,后者则是用来读取并解析xml.废话不多说一起来看看吧
1. 生成xml文件或字符串
<?php header("Content-type: text/html; charset=utf-8"); $xml=new XMLWriter(); //$xml->openUri("php://output"); //设置输出,如果不需要保存成文件则使用上面被注释掉那句 $xml->openUri("stu2.xml"); //设置缩进字符串,这里设置为空串(这句和下面的setIntent也可以不要) $xml->setIndentString(''); $xml->setIndent(true); //xml文档开始 $xml->startDocument('1.0', 'utf-8'); //创建根节点 $xml->startElement("StudentInfo"); $xml->startElement("Item"); //添加属性 $xml->writeAttribute("type","1"); $xml->startElement("id"); $xml->text("01"); $xml->endElement(); $xml->startElement("name"); $xml->text("刘惜君"); $xml->endElement(); $xml->endElement(); $xml->endElement(); $xml->endDocument(); //header("Content-type: text/xml"); //取得缓冲区里的xml字符串 //echo $xml->outputMemory(); ?>
这种方式的特点是每个标签结束后需要一个endElement,xml拼接好后需要把文档结束掉。有一种“层层包裹”的感觉
2. 解析xml
<?php header("Content-type: text/html; charset=utf-8"); $xml=new XMLReader(); //载入xml文件,如果是字符串直接使用xml方法 $xml->open("student.xml"); //开始读取xml while($xml->read()){ //根据节点类型和元素名称取得文本节点或属性 if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'item') { print $xml->getAttribute("id") . "</br>"; } if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'name') { //移动指针到下一个节点 $xml->read(); //取得文本节点的值 print $xml->value."</br>"; } if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'age') { $xml->read(); print $xml->value."</br>"; } } ?>
这种解析xml的方式比较高效,如果有的地方看不懂建议查阅下PHP开发手册
被解析的文件内容如下
<?xml version="1.0" encoding="utf-8"?> <UsersInfo><item id="01"><name>冯绍峰</name><age>30</age></item><item id="02"><name>潘玮柏</name><age>29</age></item></UsersInfo>
下面是解析出来的结果
PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:
在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson
在线格式化XML/在线压缩XML:
http://tools.jb51.net/code/xmlformat
XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress
XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
内容总结
以上是互联网集市为您收集整理的PHP基于XMLWriter操作xml的方法分析全部内容,希望文章能够帮你解决PHP基于XMLWriter操作xml的方法分析所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。