lixiaolong 发表于 2017-12-30 17:31:35

PHP中遍历XML之SimpleXML

  简单来讲述一些XML吧,XML是可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言。XML是当今用于传输数据的两大工具之一,另外一个是json。
  我们在PHP中使用XML也是用来传输数据,因此在接收到XML的时候,仅仅是一大串有结构性的字符串。
  在PHP中内置有两大扩展模块是用于处理XML的,分别是DOM扩展、SimpleXML扩展。在这里就讲解一些如何使用SimpleXML。
  SimpleXML 函数是 PHP 核心的组成部分。无需安装即可使用这些函数。
  接下来使用一个例子来进行讲解:
  

1 <?php  

2 #实例化,含有四个参数,其中第一个参数是是必须的  
3 $simplexml=new SimpleXMLElement('<?xml version="1.0"?><articles/>');
  
4
  
5 $article1=$simplexml->addChild('article');

  
6 $article1->addChild('title','this is>  
7 $article1->addChild('writer','Mr.李');
  
8
  
9 $article2=$simplexml->addChild('article');

  
10 $article2->addChild('title','this is>  
11 $article2->addChild('writer','Mr.酒鬼');
  
12
  
13 $article3=$simplexml->addChild('article');

  
14 $article3->addChild('title','this is>  
15 $article3->addChild('writer','Mr.一叶随风');
  
16
  
17 $str= $simplexml->asXML();
  
18 file_put_contents('aa.xml', $str);
  
19
  
20 $concert_list=simplexml_load_string($str);
  
21 #$concert_list=simplexml_load_file('./aa.xml');
  
22 echo "<pre>";
  
23 print_r($concert_list);
  
24 echo "</pre>";
  
25
  
26 ?>
  

  显示的结果:

  同时生成aa.xml

  从生成aa.xml文件来看,我们可以使用SimpleXML来写出我们想要的XML代码。再看看显示的结果图,此时的XML已经变成一个Object了,这就很方便我们对其进行下一步的处理了。
  在SimpleXML中我们最经常使用的两个方法是simplexml_load_string(string)和simplexml_load_string(xmlfile),这两个方法的作用相同都是将XML变成可遍历的Object。
  其中simplexml_load_string()针对的对象时XML字符串,simplexml_load_string()则是针对的对象是XML文件。
  由此可知,SimpleXML既简单有时那么的强大!
  SimpleXML还有其他方法,具体可以参考php手册:http://php.net/manual/en/class.simplexmlelement.php
  以上是自己对SimpleXML的小见解,若有不足或者错误的地方请大家指出,谢谢。
页: [1]
查看完整版本: PHP中遍历XML之SimpleXML