注册
其实我可以理解乐天,毕竟韩国是它的国家,所以也请理解我们抵制乐天,因为中国也是我们的国家

PHP中DOMElement操作XML的实例解析

嗨豆壳技术文章 时间:2015-03-10 10:48:55 [ray]

PHP操作XML可以使用多种方式,如SimpleXMLXML parse。本文实例介绍如何使用DOMElement操作xml,感兴趣的朋友可以了解一下

DOMElement新建XML的操作实例
<?php
$doc = new DOMDocument;
// 添加一个list节点
$list = $doc->createElement("list");
$newXML = $doc->appendChild($list);
// 在list节点之下添加item节点并设置文本和属性
$item = $doc->createElement("item");
$itemText = $doc->createTextNode("i_1");
$item->appendChild($itemText);
$itemAttr = $doc->createAttribute("alt");
$itemAttr->value = "value";
$item->appendChild($itemAttr);
$newXML = $list->appendChild($item);
// 在list节点之下添加title节点并设置文本
$title = $doc->createElement("title");
$titleText = $doc->createTextNode("标题");
$title->appendChild($titleText);
$newXML = $list->appendChild($title);
// 保存
echo $doc->saveXML();
?>
DOMElement读取XML内容的操作实例

用于测试的待读取XML文件test.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代码

<?php
$xml = new DOMDocument(); 
// 加载Xml文件 
$xml->load("test.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 />"; 
}
?>

标签

本文地址:https://www.hi-docs.com/article/125.html

上一篇:jQuery淘宝产品图片放大镜代码

下一篇:百度免费IP地址查询API,查询接口