php中DOMElement操作xml文档实例演示_php教程-查字典教程网
php中DOMElement操作xml文档实例演示
php中DOMElement操作xml文档实例演示
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:孙悟空孙行者123

复制代码 代码如下:

<?php

//Store your html into $html variable.

$html="<html>

<head>

<title>Rakesh Verma</title>

</head>

<body>

<a href='http://example.com'>Example</a>

<a href='http://google.com'>Google</a>

<a href='http://www.yahoo.com'>Yahoo</a>

</body>

</html>";

$dom = new DOMDocument();

$dom->loadHTML($html);

//Evaluate Anchor tag in HTML

$xpath = new DOMXPath($dom);

$hrefs = $xpath->evaluate("/html/body//a");

for ($i = 0; $i < $hrefs->length; $i++) {

$href = $hrefs->item($i);

$url = $href->getAttribute('href');

//remove and set target attribute

$href->removeAttribute('target');

$href->setAttribute("target", "_blank");

$newURL=$url.".au";

//remove and set href attribute

$href->removeAttribute('href');

$href->setAttribute("href", $newURL);

}

// save html

$html=$dom->saveHTML();

echo $html;

?>

例2

复制代码 代码如下:

/*<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<>

<?xml-stylesheet type="text/css" href="css.css"?>

<>

<>

<班级>

<学生 number="101">

<名字>孙悟空</名字>

<名字>孙行者</名字>

<年龄>123</年龄>

<介绍><![CDATA[&*$%特殊字串^&#$&]]></介绍>

</学生>

<学生 number="10"2">

<名字>白骨精</名字>

<年龄>140</年龄>

<介绍>介绍内容</介绍>

</学生>

</班级>

*/

$xmldoc = new DOMDocument('1.0', 'UTF-8');

$xmldoc->load('datas.xml');

$itemsNodeList = $xmldoc->getElementsbyTagName('学生');

$itemElement = $itemsNodeList->item(0);//得到第一个完整的学生信息节点

$itemChildsNodeList = $itemElement->getElementsbyTagName('名字');//得到子节点“名字”,也许有多个名字

$itemChildNode = $itemChildsNodeList->item(0);//得到第一个名字节点

echo $itemChildNode->nodeValue;//输出节点值

//封装成函数

$nodeArr = array('名字', '年龄', '介绍');

function getNodeVal($xmldoc, $itemsName, $nodeArr){

$items = $xmldoc->getElementsByTagName($itemsName);

for($i=0; $i < $items->length; $i++){

$item = $items->item($i);

foreach($nodeArr as $node){

$data[$i][] = $item->getElementsByTagName($node)->item(0)->nodeValue;

}

}

return $data;

}

$data = getNodeVal($xmldoc, '学生', $nodeArr);

print_r($data);

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新php教程学习
    热门php教程学习
    编程开发子分类