PHP的三种XML解析器之SimpleXML解析器(三)

原创 2015年11月20日 16:41:37

XML文件内容

<?xml version="1.0" encoding="UTF-8" ?>
<note>
	<to>腾讯</to>
	<from>百度</from>
	<head>bat</head>
	<body>BAT是中国互联网公司百度公司(Baidu)、阿里巴巴集团(Alibaba)、腾讯公司(Tencent)三大巨头首字母缩写。</body>
</note>

PHP文件内容

<?php
	header('Content-type:text/html;charset=utf-8');
	/*
	三种方式解析XML文件
	1.基于事件的Expat解析器
	2.基于树的DOM解析器
	3.SimpleXML解析器
	*/

	//SimpleXML解析器
	//1.加载XML文件
	$xml = simplexml_load_file('note.xml');
	
	//2.输出XML根节点的名称
	echo $xml -> getName() . '<br />';

	//3.遍历根节点的所有子节点
	foreach ($xml -> children() as $child){
		echo $child -> getName() . ': ' . $child . '<br />';
	}

网页输出



结论

跟DOM解析器比较,发现二者的结构差不多,但还是有一些差异。

1.SimpleXML不需要初始化解析器了,直接加载文件。

2.SimpleXML解析器加载XML文件后,直接获取到了根节点,而DOM解析器则需要获取documentElement属性才获取到根节点。

3.在子节点遍历中,SimpleXML解析器输出子节点变量就直接输出了子节点的文本内容,而DOM节点需要获取nodeValue属性。

版权声明:本文为博主原创文章,未经博主允许不得转载。

PHP中的XML解析的5种方法

【前言】不管是桌面软件开发,还是WEB应用,XML无处不在!然而在平时的工作中,仅仅是使用一些已经封装好的类对XML对于处理,包括生成,解析等。假期有空,于是将PHP中的几种XML解析方法总结如下:以...
  • AloneSword
  • AloneSword
  • 2014年01月03日 12:10
  • 8425

自己写一个好的PHP解析xml的类

class ome_xml {           /**      * xml资源     *      * @var        resource      * @see      ...
  • u013219814
  • u013219814
  • 2017年04月03日 17:51
  • 579

PHP如何接收和解析xml

目前我们产品在做一个跟微信公众号
  • momo_mutou
  • momo_mutou
  • 2014年11月05日 09:23
  • 5632

PHP:PHP与XML

XML(扩展标记语言)是计算机业界中最重要的技术之一。它应用广泛,从计算机之间数据共享,到为一个独立的应用提供数据存储。XML提供的格式不仅能够保存信息,还能保存关于信息的信息(称为:“元信息”)。...
  • github_36704158
  • github_36704158
  • 2017年03月27日 16:25
  • 322

PHP生成和解析xml(SimpleXML版)

php中一套比较简洁的操作xml的方法,相比java操作xml要简单好几倍。有需要的话可以随便看看。...
  • chenwill3
  • chenwill3
  • 2013年10月14日 22:43
  • 5445

XmlParser: 简易的 Xml 解析器的实现(二)

一、引言在上一篇博客里,我主要架构了一个 xml 解析器的三大模块,分别是读取模块、解析模块、获取数据模块,并在尽快实现整体架构的目标下,实现了一个非常简略的 xml 解析器。想要了解 xml 解析器...
  • u012814856
  • u012814856
  • 2017年06月30日 14:18
  • 442

php 解析xml 的四种方法

XML处理是开发过程中经常遇到的,PHP对其也有很丰富的支持,本文只是对其中某几种解析技术做简要说明,包括:Xml parser, SimpleXML, XMLReader, DOMDocument。...
  • smcfy
  • smcfy
  • 2012年05月23日 10:34
  • 7157

PHP解析XML

1.PHP简单操作XML://读取XMl; $doc=new DOMDocument(); $doc->load("demo.xml"); //获取节点列表方法: $nodelist1=$doc->g...
  • qixiLB_
  • qixiLB_
  • 2016年08月05日 18:59
  • 102

简单强大的xml解析器

LiteXmla lite and power serializable&deserializable xml parser
  • longweiwei9
  • longweiwei9
  • 2016年07月18日 23:43
  • 1249

c语言xml解析器libxm2

写这篇文章的原因有如下几点:1)C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,LIBXML2是其中一种很优秀的XML库,而且它同时支持多种编程语言;2)LIBXML2库...
  • dxpqxb
  • dxpqxb
  • 2014年03月24日 19:36
  • 1605
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP的三种XML解析器之SimpleXML解析器(三)
举报原因:
原因补充:

(最多只允许输入30个字)