php读取xml实例代码

yipeiwu_com5年前PHP代码库
php文件
复制代码 代码如下:

<?php
class xpathExtension{
public static function getNodes($domDoc, $xpathString) {
$xp = new DOMXPath($domDoc);
$xp->registerNamespace('x', 'http://www.w3.org/1999/xhtml');
$xp->registerNamespace('xhtml', 'http://www.w3.org/1999/xhtml');
$xp->registerNamespace('i18n', 'http://apache.org/cocoon/i18n/2.1');
$ret = array();
$nodes = $xp->query($xpathString);
foreach ($nodes as $node) {
array_push($ret, $node);
}
return $ret;
}
}
$domDoc = new DOMDocument();
$domDoc->load("x1.xml");
$xpathString = "//xml/products/product/description";
$domNodeList = xpathExtension::getNodes($domDoc, $xpathString);
//echo count($domNodeList);
foreach($domNodeList as $domNode){
echo $domNode->nodeValue;
}
?>

xml
复制代码 代码如下:

<?xml version="1.0" encoding="utf-8" ?>
<xml>
<products>
<product>
<description>
abcd
</description>
</product>
</products>
</xml>

相关文章

解析php扩展php_curl.dll不加载的解决方法

方法一(已通过测试)已经内置有php_curl.dll,在ext目录下,此DLL用于支持SSL和zlib.在php.ini中找到有extension=php_curl.dll, 去掉前面...

工厂模式在Zend Framework中应用介绍

工厂模式在Zend Framework中应用介绍

首先我们先引用些概念: 工厂模式:专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有其同的父类。工厂模式属于类的创建模式,通常根据自变量的不同返回不同类的实例。 工厂模式的实质...

PHP的消息通信机制测试实例

本文实例讲述了PHP的消息通信机制。分享给大家供大家参考,具体如下: <?php error_reporting(E_ALL&~E_WARNING&~E_NOTICE)...

几个实用的PHP内置函数使用指南

几个实用的PHP内置函数使用指南

PHP有许多内置函数,其中大多数函数都被程序员广泛使用。但也有一些函数隐藏在角落,本文将向大家介绍7个鲜为人知,但用处非常大的函数。 没用过的程序员不妨过来看看。   1.highli...

nginx+thinkphp下解决不支持pathinfo模式

nginx环境问题弄了两天,发现网上很多人的帖子要么复制粘贴,要么就是没有结贴,还自己写一句“哈哈,我自己解决了”之类的,这点我就鄙视这些发帖的同胞了,你说你问题问了,问题解决了也不给个...