- 浏览: 156454 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
NickWar:
脚本很好用,感谢楼主分享
但我只能导出10篇文档的xml ...
原创使用google reader + PHP将iteye博客数据导入到wordpress中 -
再逢山水:
ninedoors 写道这位仁兄,还有一个问题,感觉挺诡异的, ...
ThinkPHP中M和D函数的区别 -
ninedoors:
这位仁兄,还有一个问题,感觉挺诡异的,却不知道原因。我在用th ...
ThinkPHP中M和D函数的区别 -
柏新星:
谢谢 最起码简单的了解了一些 呵呵
stdClass的介绍
不得不自已写一个.XML 的操作一直没有用过.下面是自己搜集的XML操作类
DOMDocument相关的内容.
属性:
Attributes--->存储节点的属性列表(只读)
childNodes--->存储节点的子节点列表(只读)
dataType--->返回此节点的数据类型
Definition--->以DTD或XML模式给出的节点的定义(只读)
Doctype--->指定文档类型节点(只读)
documentElement--->返回文档的根元素(可读写)
firstChild--->返回当前节点的第一个子节点(只读)
Implementation--->返回XMLDOMImplementation对象
lastChild--->返回当前节点最后一个子节点(只读)
nextSibling--->返回当前节点的下一个兄弟节点(只读)
nodeName--->返回节点的名字(只读)
nodeType--->返回节点的类型(只读)
nodeTypedValue--->存储节点值(可读写)
nodeValue--->返回节点的文本(可读写)
ownerDocument--->返回包含此节点的根文档(只读)
parentNode--->返回父节点(只读)
Parsed--->返回此节点及其子节点是否已经被解析(只读)
Prefix--->返回名称空间前缀(只读)
preserveWhiteSpace--->指定是否保留空白(可读写)
previousSibling--->返回此节点的前一个兄弟节点(只读)
Text--->返回此节点及其后代的文本内容(可读写)
url--->返回最近载入的XML文档的URL(只读)
Xml--->返回节点及其后代的XML表示(只读)
方法:
appendChild--->为当前节点添加一个新的子节点,放在最后的子节点后
cloneNode--->返回当前节点的拷贝
createAttribute--->创建新的属性
createCDATASection--->创建包括给定数据的CDATA段
createComment--->创建一个注释节点
createDocumentFragment--->创建DocumentFragment对象
createElement--->创建一个元素节点
createEntityReference--->创建EntityReference对象
createNode--->创建给定类型,名字和命名空间的节点
createPorcessingInstruction--->创建操作指令节点
createTextNode--->创建包括给定数据的文本节点
getElementsByTagName--->返回指定名字的元素集合
hasChildNodes--->返回当前节点是否有子节点
insertBefore--->在指定节点前插入子节点
Load--->导入指定位置的XML文档
loadXML--->导入指定字符串的XML文档
removeChild--->从子结点列表中删除指定的子节点
replaceChild--->从子节点列表中替换指定的子节点
Save--->把XML文件存到指定节点
selectNodes--->对节点进行指定的匹配,并返回匹配节点列表
selectSingleNode--->对节点进行指定的匹配,并返回第一个匹配节点
transformNode--->使用指定的样式表对节点及其后代进行转换
transformNodeToObject--->使用指定的样式表将节点及其后代转换
实例获取标签属性.值:
Me.xml
下面是js读取xml文件的代码 ajax+xml留言
DOMDocument相关的内容.
属性:
Attributes--->存储节点的属性列表(只读)
childNodes--->存储节点的子节点列表(只读)
dataType--->返回此节点的数据类型
Definition--->以DTD或XML模式给出的节点的定义(只读)
Doctype--->指定文档类型节点(只读)
documentElement--->返回文档的根元素(可读写)
firstChild--->返回当前节点的第一个子节点(只读)
Implementation--->返回XMLDOMImplementation对象
lastChild--->返回当前节点最后一个子节点(只读)
nextSibling--->返回当前节点的下一个兄弟节点(只读)
nodeName--->返回节点的名字(只读)
nodeType--->返回节点的类型(只读)
nodeTypedValue--->存储节点值(可读写)
nodeValue--->返回节点的文本(可读写)
ownerDocument--->返回包含此节点的根文档(只读)
parentNode--->返回父节点(只读)
Parsed--->返回此节点及其子节点是否已经被解析(只读)
Prefix--->返回名称空间前缀(只读)
preserveWhiteSpace--->指定是否保留空白(可读写)
previousSibling--->返回此节点的前一个兄弟节点(只读)
Text--->返回此节点及其后代的文本内容(可读写)
url--->返回最近载入的XML文档的URL(只读)
Xml--->返回节点及其后代的XML表示(只读)
方法:
appendChild--->为当前节点添加一个新的子节点,放在最后的子节点后
cloneNode--->返回当前节点的拷贝
createAttribute--->创建新的属性
createCDATASection--->创建包括给定数据的CDATA段
createComment--->创建一个注释节点
createDocumentFragment--->创建DocumentFragment对象
createElement--->创建一个元素节点
createEntityReference--->创建EntityReference对象
createNode--->创建给定类型,名字和命名空间的节点
createPorcessingInstruction--->创建操作指令节点
createTextNode--->创建包括给定数据的文本节点
getElementsByTagName--->返回指定名字的元素集合
hasChildNodes--->返回当前节点是否有子节点
insertBefore--->在指定节点前插入子节点
Load--->导入指定位置的XML文档
loadXML--->导入指定字符串的XML文档
removeChild--->从子结点列表中删除指定的子节点
replaceChild--->从子节点列表中替换指定的子节点
Save--->把XML文件存到指定节点
selectNodes--->对节点进行指定的匹配,并返回匹配节点列表
selectSingleNode--->对节点进行指定的匹配,并返回第一个匹配节点
transformNode--->使用指定的样式表对节点及其后代进行转换
transformNodeToObject--->使用指定的样式表将节点及其后代转换
实例获取标签属性.值:
Me.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>
// 首先要建一个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(*)->nodeName * 若取属性的类型可以用item(*)->nodeType */ echo "Id: " . $title->item(0)->attributes->item(0)->nodeValue . "<br />"; echo "Title: " . $title->item(0)->nodeValue . "<br />"; echo "Details: " . $post->getElementsByTagName("details")->item(0)->nodeValue . "<br /><br />"; }
下面是js读取xml文件的代码 ajax+xml留言
var xmldoc = new ActiveXObject("Microsoft.XMLDOM"); xmldoc.async = false; var 旧发言 = ""; function getxml(){ try { xmldoc.load("word.xml"); if (xmldoc.documentElement != null) { var 新发言 = xmldoc.xml; if (新发言 != 旧发言) { 旧发言 = 新发言; var allwords = xmldoc.selectNodes("list/message"); 新发言 = ""; for (var i = 0; i < allwords.length; i++) { var 数组 = allwords[i].text.split("@"); var 作者 = 数组[0]; if (作者 == 用户名.value) { 作者 = "<font color='Turquoise'>" + 作者 + "</font>"; } else { 作者 = "<font color='Silver'>" + 作者 + "</font>"; } var 发言 = "<font color='Gold'>" + 数组[1] + "</font>"; 新发言 += "<div>" + 作者 + " " + 发言 + "</div>" + "<div style='text-align:right;font-size:9px;'>" + allwords[i].getAttribute("author").substring(0, allwords[i].getAttribute("author").lastIndexOf(".") + 1) + "* " + allwords[i].getAttribute("time") + "</div>"; } words.innerHTML = 新发言; words.scrollTop = words.scrollHeight; } } } catch (e) { } } var 读取中 = false; function getdata(){ if (!读取中) { 读取中 = true; getxml(); 读取中 = false; } setTimeout("getdata()", 3000); } getdata(); submit.onclick = function(){ submit.disabled = true; if (word.value != "") { var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlHttp.open("GET", "save.php?name=" + encodeURIComponent(用户名.value) + "&word=" + encodeURIComponent(word.value), true); xmlHttp.setRequestHeader("Content-Type", "text/html; charset=utf-8"); xmlHttp.send(null); word.value = ""; if (!读取中) { 读取中 = true; getxml(); 读取中 = false; } } setTimeout("submit.disabled = false;", 3000); word.focus(); }
发表评论
-
PHP stream_context_create()作用和用法分析
2013-04-03 10:28 0创建并返回一个文本数据流并应用各种选项,可用于fopen(), ... -
PHP - Iterator接口的解释
2012-12-06 14:23 902Iterator的接口定义如下: Iterato ... -
php中exec,system及passthru等函数用法
2012-08-13 10:49 1072由于PHP基本是用于WEB程 ... -
HTTP协议状态码详解(HTTP Status Code)
2012-08-13 10:41 1016使用php或者javascript都会 ... -
spl_autoload_register 函数详解
2012-06-19 11:45 6722spl_autoload_register (PHP 5 &g ... -
PHP 程序员学数据结构与算法之《栈》
2012-11-24 17:01 1254介绍 “要成高 ... -
MySQL字段类型
2012-03-13 12:21 894MySQL支持大量的列类型 ... -
20个数据库设计的最佳实践
2012-02-27 10:33 11141、使用定义明确的表或列名,并保持一致(例如,School、S ... -
PHP中curl_setopt的CURLOPT系列 选项(转)
2012-01-17 15:41 3453curl_setopt()函数将为一个CURL会话设置选项。 ... -
2011年最热门的开源PHP项目回顾
2012-01-01 12:07 1179本文来自于对活跃在SourceForge和GitHub上的项目 ... -
PHP开发者常犯的10个MySQL错误
2012-01-01 12:03 917数据库是WEB大多数应用 ... -
二十五个顶级PHP模板引擎整理
2011-08-09 17:20 1052为了找到一个好的模板引擎,我在互联网上进行搜索,目前已经整理出 ... -
php接收二进制数据流转换成图片
2011-08-04 17:49 11460<?php /** * 图片类 * @au ... -
PHP性能优化贴士——产生高度优化代码
2011-07-19 09:43 990PHP是一种在服务器端执 ... -
PHP register_shutdown_function函数详解
2011-07-18 11:47 1427脚本时常死掉,而且并不总是那么好看. 我们可不想给用户 ... -
JQuery星星评级代码
2011-07-13 15:43 1828<html> <title& ... -
PHP程序员最常犯的11个MySQL错误
2011-06-30 15:58 721对于大多数web应用来说,数据库都是一个十分基础性的部 ... -
简述MVC思想与PHP如何实现MVC
2011-06-20 11:17 889我相信已经有很多这样 ... -
PHP中的生成XML文件的4种方法
2011-06-15 11:56 2517<?xml version="1.0&qu ... -
stdClass的介绍
2011-06-02 10:11 1103在PHP开发中,很多时候都会看到别人的代码里有 $use ...
相关推荐
DOMDocument 是 PHP 中处理 XML 的另一个强大的类。与 SimpleXML 相比,它提供了更多的功能和灵活性,但也可能需要更多的代码。DOMDocument 允许你构建和操作复杂的 XML 文档,包括添加属性、修改元素和命名空间等。...
在PHP中,DOMDocument是DOM库的核心类,用于创建、修改和操作XML或HTML文档。它提供了许多方法来解析XML字符串,加载XML文件,以及创建、查询和修改XML文档的节点。 3. **加载XML**: 使用`DOMDocument::loadXML...
HTML5DOMDocument是PHP中处理HTML5文档的一个强大的工具,它是对PHP内置DOMDocument类的扩展,提供了更方便和高效的方式来解析和操作HTML5代码。这个解析器在处理不规范或者包含错误的HTML5文档时表现得更为健壮,...
在PHP中,XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,广泛应用在Web服务、配置文件和数据交换等场景。...同时,对于不常用的XML操作,直接使用PHP内置的XML处理类可能更可靠。
在PHP中,`DOMDocument`类是DOM的核心,它是整个XML文档的根节点,而`DOMElement`类则代表XML文档中的元素节点。 要创建一个新的XML文档,我们首先需要实例化一个`DOMDocument`对象,并设置其版本和编码: ```php ...
DOMDocument是PHP内置的一个类,用于操作XML文档。它提供了一种以面向对象的方式解析和生成XML的方法。本篇文章将详细介绍如何使用PHP中的DOMDocument类来解析和生成XML文档,通过具体的代码实例来展示常用的操作...
PHP提供了DOMDocument类,这是一个强大的工具,可以用来解析、修改和操作XML文档。下面将详细讨论PHP如何利用DOMDocument类读取XML文件以及这个“php读取xml文件类”的基本工作原理。 首先,DOMDocument类是PHP内建...
在PHP中,可以使用`DOMDocument`类来创建,例如: ```php $doc = new DOMDocument(); ``` 2. **设置文档类型**:如果需要,可以定义XML文档的DOCTYPE,例如: ```php $doc->appendChild($doc->...
使用DOMDocument类,可以对XML文件进行载入、读取、修改、保存等操作。 在使用DOMDocument类之前,需要创建一个DOMDocument对象,通过实例化DOMDocument类即可完成。创建对象之后,可以调用load方法来载入XML文件,...
1. DOMDocument:这是PHP中最常用的XML处理类,它实现了完整的W3C Document Object Model (DOM) Level 1 Core 和 Level 2 Core 规范。使用DOMDocument,你可以创建、修改、查询和遍历XML文档。例如,加载XML文件的...
除了这些基本操作,DOMDocument还有许多其他类,如DOMElement、DOMCharacterData、DOMAttr等,它们分别代表XML中的元素、字符数据、属性等节点。例如: - DOMCDATASection表示文档中的CDATA区段,它允许包含不受...
在PHP中创建XML文件是一种基本的技能,本篇将介绍如何使用PHP的DOMDocument类和SimpleXMLElement类来创建XML文件。 首先,我们来谈谈DOMDocument类。DOMDocument类是PHP中用于操作DOM(文档对象模型)的一个标准类...
首先,PHP提供了内置的`DOMDocument`类和`DOMXpath`类,它们可以用来解析XML文档并提取数据。以下是一个基本的转换过程: 1. **创建DOMDocument对象**: ```php $xmlString = '<root><item id="1">Item 1</item>...
它提供了一系列的类和方法,如`DOMDocument`用于加载XML文件,`DOMElement`代表XML元素,以及`getElementsByTagName`、`getElementById`等方法用于查找特定元素。例如,以下代码展示了如何使用DOM库读取清单1中的XML...
在PHP中,DOMDocument对象是用于处理XML文档的核心类,它可以用来创建、解析、修改和输出XML文件。本文将深入探讨如何使用PHP的DOMDocument对象来操作XML。 首先,我们来看如何创建一个新的XML文件。在PHP中,创建...
例如,要读取清单1中的图书XML文件,可以创建一个DOMDocument对象(如清单2所示),然后通过`load()`函数加载XML文件。`getElementsByTagName()`方法用于检索特定类型的元素,如`book`。遍历这些元素,可以访问其子...
在PHP中处理XML数据时,封装XML操作类是一种高效且灵活的方法。这里我们分析一个完整的PHP XML简单操作类实例,该类将XML文件的载入、读取和写入功能封装起来,方便开发者进行XML数据的操作。 首先,XML_DOM类是这...