PHP创建和解析XML一、使用SimpleXML操作XML处理XML文件,传统的处理思路有两种:SAX和DOM。SAX基于事件触发机制,对XML文件扫描一次,完成处理;DOM将整个XML文件构造成DOM树,通过遍历DOM树完成处理。这两种方法各有优缺点。SAX的处理思路比较抽象,DOM的处理过程比较繁琐,不太适合初学者。PHP5退出了一套新的XML处理函数,即SimpleXML。SimpleXML顾名思义,本身小巧而强大,只提供了少量的功能和少量的方法。单独使用它处理XML文件功能非常强大,操作也非常简单。1.创建XML文件【PHP】纯文本查看复制代码?
';//如果有多个,可以设置它的个数下标echo$_sxe->version[0];回声'
';//如果想全部打印出来,可以使用遍历foreach($_sxe->versionas$_version){echo'['.$_version.']';}//访问从节点的作者echo$_sxe->user[0]->author;echo'
';//获取所有secondary节点的name值foreach($_sxe->useras$_user){echo'['.$_user->author.']';}echo'
';//获取二级节点标签的属性echo$_sxe->user[0]->author->attributes();?>效果图:5.使用XPath获取节点【PHP】纯文本查看复制代码?xpath("/root/version");echo$_version[1];//遍历版本foreach($_versionas$_v){echo'['.$_v.']';}//访问从节点$_user=$_sxe->xpath('/root/user');echo$_user[2]->name;//遍历二级节点foreach($_useras$_u){echo'['.$u->name.']';}//访问属性echo$_user[1]->author->attributes();?>效果图:2.使用DOMDocument操作XML很多情况下,手动生成标签需要从上到下生成文档,需要保证标签完整,起止标签,虽然有些PHP函数或者类可以使用它进行了改进,但PHP还提供了一组更有用的内置对象和函数。文档对象模型(DocumentObjectModel,DOM)提供了一个树桩结构,使创建和处理标签变得容易。1.DOMDocument生成XML[PHP]纯文本视图复制代码?formatOutput=true;//创建主标签$_root=$_doc->createElement('root');//创建一级标签version$_version=$_doc->createElement('version');//给版本标签赋值$_versionTextNode=$_doc->createTextNode('1.0');//把valueintotheversiontag$_version->appendChild($_versionTextNode);//将一级标签version放入根$_root->appendChild($_version);//放入主tab写xml$_doc->appendChild($_root);//生成xml$_doc->save('aaa.xml');?>效果图:2.DOMDocument解析XML[PHP]纯文本视图复制代码?load('test.xml');//获取版本标签$_version=$_doc->getElementsByTagName('version');;echo$_version->item(2)->nodeValue;//遍历版本标签foreach($_versionas$v){echo$v->nodeValue;}?>效果图更多技术资料如下:gzitcast