欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

php生成和好析xml(simplexml版)

更新时间: 2014-01-05 02:01:24 责任编辑: Author_N1

 

PHP生成和解析xml(SimpleXML版)

xml就不多解释了,php也提供了操作xml的方法,php操作xml可以有多种方式如domdocment,simplexml,xmlwriter等其中最简单的应该是simplexml了,这次就来说说simplexml怎么读取和解析xml文件或字符串

1.生成xml字符串和文件

<?php
  header("Content-type: text/html; charset=utf-8"); 
  $xml=new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><UsersInfo />');
  $item=$xml->addchild("item");
  $item->addchild("name","冯绍峰");
  $item->addchild("age","30"); 
  $item2=$xml->addchild("item");
  $item2->addchild("name","潘玮柏");
  $item2->addchild("age","29");
  $item2->addAttribute("id","02");
  header("Content-type: text/xml");
  echo $xml->asXml();
  $xml->asXml("student.xml");
?>

生成xml最重要的就是addchild,addAttribute,asXml三个方法,如果只是单纯生成xml文件的话那个header可以不要,下面是浏览器的显示结果

是不是很简单呢

2.simplexml解析xml文件或字符串

<?php
  header("Content-type: text/html; charset=utf-8"); 
  $xml=simplexml_load_file("UserInfo.xml");
  //通过children取得根节点下面的子项
  for($i=0;$i<count($xml->children());$i++){
      foreach ($xml->children()[$i] as $key => $value ) {
       echo "$key:$value"."<br/>";
     }
  }
  
  
?>

上面的方法适合解析xml文件,如果是xml字符串就把simplexml_load_file改为simplexml_load_string就可以了,children用于取得根节点或者子节点,取得的节点是一个数组直接遍历必要的时候加上过滤条件就可以了,下面是解析的结果

顺便把我的xml文件贴出来

<?xml version="1.0" encoding="UTF-8"?>
<UsersInfo>
  <item>
     <name>潘玮柏</name>
     <address>上海市浦东新区</address>
     <song>快乐崇拜</song>
  </item>
  <item>
     <name>蔡依林</name>
     <address>上海市徐汇区</address>
     <song>独占神话</song>
  </item>
</UsersInfo>

总的说来操作真的太简洁了,下次和大家分享的是domdocment操作xml.再见


上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:01:24
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/4632/
本文WWW.DOC100.NET DOC100.NET版权所有。