解读PHP DOMDocument在解析XML文件中的作用
解读PHP DOMDocument在解析XML文件中的作用
http://developer.51cto.com 2009-12-02 10:39 佚名 柳城博客 我要评论(0)
PHP DOMDocument的功能非常强大,我们在这篇文章中将介绍如何正确的运用PHP DOMDocument来进行XML文件的解析。希望对又需要的朋友有所帮助。
在使用PHP对XML文件进行解析的时候,我们可以用很多方法。在这里,我们将为大家重点介绍如何使用PHP DOMDocument来及逆行能够XML文件的解析。
关于用到的XML文件还以“Php Xml处理之simplexml使用方法浅谈”一文中的XML为例,文件名为:me.xml。代码如下:
PHP XML处理XML代码
<?xml version="1.0" encoding="utf-8"?>
<phplamp>
<post>
<title id="1">PHP XML处理介绍一</title>
<details>详细内容一</details>
</post>
<post>
<title id="2">PHP XML处理介绍二</title>
<details>详细内容二</details>
</post>
<post>
<title id="3">PHP XML处理介绍三</title>
<details>详细内容三</details>
</post>
</phplamp>
然后就需要用PHP DOMDocument去处理这个文件,将XML文件中的任何元素都解析出来。代码如下,里面有注释。
PHP DOMDocument解析XML文件的代码
<?php
// 首先要建一个DOMDocument对象
$xml = new DOMDocument();
// 加载Xml文件
$xml->load("me.xml");
// 获取所有的post标签
$postDom = $xml->getElementsByTagName("post");
// 循环遍历post标签
foreach($postDom as $post){
// 获取Title标签Node
$title = $post->getElementsByTagName("title");
/**
* 要获取Title标签的Id属性要分两部走
* 1. 获取title中所有属性的
列表也就是$title->item(0)->attributes
* 2. 获取title中id的属性,
因为其在第一位所以用item(0)
*
* 小提示:
* 若取属性的值可以用item(*)->nodeValue
* 若取属性的标签可以用item(*)->nodeN
相关文档:
在windows下安装image magic 的php扩展 imagick, 首先需要下载php_imagick.dll文件.这个dll文件非常关键.
如果下载了错误的php_imagick.dll.安装就会失败.我就是下载了N个这样的dll文件都未能安装成功.最后终于给我找到正确的dll文件了
下载地址:http://valokuva.org/outside-blog-content/imagick-windows-builds ......
为了深入了解PHP,以及更加便利的使用PHP为我们服务,本章节主要介绍PHP的基本语法。
一、从HTML中分离
PHP 的脚本由文件中一对特殊的标记所引起的内容,当解释器分析一个文件时,所有特殊标记外的普通文件,解释器不对其做任何处理,而特殊标记内文件将作为 PHP 代码被解释器分析执行。该运行机制将允许您在 HTML 中嵌入 ......
php对xml文件中节点的删除\编辑
使用getElementsByTagName()方法删除\编辑XML节点
三个文件:
1.root.xml
2.remove.php —— 删除节点
3.replace.php —— 替换节点
root.xml
<root>
<child1>child1 content</child1>
<child2>child2 content</child2>
& ......
在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了:
一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几种方法:
(1) 如果有数据库就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可 ......
1. 对递归的不良支持
递归是一种函数调用自身的机制。这是一种强大的特性可以把某些复杂的东西变得很简单。有一个使用递归的例子是快速排序(quicksort)。不幸的是,PHP并不擅长递归。Zeev,一个PHP开发人员,说道:“PHP 4.0(Zend)对密集数据使用了栈方式,而不是使用堆方式。也就是说它能容忍的递归函数的数量限 ......