当前位置: 首页 > news >正文

武汉网站排名提升/账户竞价托管费用

武汉网站排名提升,账户竞价托管费用,设置字体颜色的网站,做金融的网站有哪些对于操作XML类型文件,PHP内置有一套DOM对象可以进行处理。对XML的操作,从创建、添加到修改、删除都可以使用DOM对象中的函数来进行。 创建 创建一个新的XML文件,并且写入一些数据到这个XML文件中。 /** 创建xml文件*/$info array(array(obj …

 

对于操作XML类型文件,PHP内置有一套DOM对象可以进行处理。对XML的操作,从创建、添加到修改、删除都可以使用DOM对象中的函数来进行。 
创建 
创建一个新的XML文件,并且写入一些数据到这个XML文件中。

 

/** 创建xml文件*/$info = array(array('obj' => 'power','info' => 'power is shutdown'),array('obj' => 'memcache','info' => 'memcache used than 90%'),array('obj' => 'cpu','info' => 'cpu used than 95%'),array('obj' => 'disk','info' => 'disk is removed')
);//用来写入的数据$dom = new DOMDocument('1.0');
$dom->formatOutput = true;//格式化$eventList = $dom->createElement('EventList');//创建根节点EventList
$dom->appendChild($eventList);//添加根节点for($i = 0; $i < count($info); $i++){$event = $dom->createElement('event');//创建节点event$text = $dom->createTextNode('PHP'.$i);//创建文本节点,值为PHP0,PHP1...$event->appendChild($text);//将文本节点添加到节点event,做为节点event的值$attr_obj = $dom->createAttribute('obj');//创建属性obj$attr_obj->value = $info[$i]['obj'];//为obj属性赋值$event->appendChild($attr_obj);//将obj属性添加到event节点中,做为event节点的属性$attr_info = $dom->createAttribute('info');$attr_info->value = $info[$i]['info'];$event->appendChild($attr_info);$eventList->appendChild($event);//将event节点添加到根节点EventList中
}//echo $dom->saveXML();
$dom->save('./t.xml');//保存信息到当前目录下的t.xml文件中

 

 

 

 

上面的代码段可以创建一个XML文件,并添加一些信息到这个文件中,包括值和属性,最终形成的文件为当前目录下的t.xml,可以看一下它的内容。

 

<?xml version="1.0"?>
<EventList><event obj="power" info="power is shutdown">PHP0</event><event obj="memcache" info="memcache used than 90%">PHP1</event><event obj="cpu" info="cpu used than 95%">PHP2</event><event obj="disk" info="disk is removed">PHP3</event>
</EventList>

 



读取XML信息&添加新的属性 

以上一节创建的t.xml文件为操作对象,读取出t.xml文件中的信息,并给节点添加一个新的属性count,其值为1。

 

/** 读取xml文件信息,并添加新的属性*/$dom = new DOMDocument('1.0');
$dom->load('./t.xml');//加载要操作的文件
$list = $dom->getElementsByTagName('event');//获取event节点列表
foreach($list as $item){$attr_obj = $item->getAttribute('obj');//获取属性obj的值$attr_info = $item->getAttribute('info');echo "<pre>Object:$attr_obj;Info:$attr_info;Value:{$item->nodeValue}</pre>";$item->setAttribute('count',1);//添加新的属性count=1
}
$dom->save('./t.xml');//保存修改

 

 

 

 

 

看一下提取到的值:

 

Object:power;Info:power is shutdown;Value:PHP0Object:memcache;Info:memcache used than 90%;Value:PHP1Object:cpu;Info:cpu used than 95%;Value:PHP2Object:disk;Info:disk is removed;Value:PHP3

 

 

 

 

 

再看一下现在的t.xml文件的内容,count属性已经添加上。

 

<?xml version="1.0"?>
<EventList><event obj="power" info="power is shutdown" count="1">PHP0</event><event obj="memcache" info="memcache used than 90%" count="1">PHP1</event><event obj="cpu" info="cpu used than 95%" count="1">PHP2</event><event obj="disk" info="disk is removed" count="1">PHP3</event>
</EventList>

 

 

 

 

 

修改节点属性&节点值 
以上一节中的t.xml文件为操作对象,修改一下obj属性是cpu的节点的count值,新的值为count+1。

 

/** 修改某一个节点的属性和值*/$dom = new DOMDocument('1.0');
$dom->load('./t.xml');
$list = $dom->getElementsByTagName('event');
foreach($list as $item){$attr_obj = $item->getAttribute('obj');if($attr_obj == 'cpu'){//修改cpu的count属性,使其值+1$attr_count = $item->getAttribute('count');//获取count属性的值$item->setAttribute('count',$attr_count+1);//重置count属性的值$item->nodeValue = 'Hello,Kitty';//重置节点的值}
}
$dom->save('./t.xml');

 

 

 

 

操作后的t.xml文件如下,要以看到obj=cpu的节点的count属性已经改变,值也修改成功。

 

<?xml version="1.0"?>
<EventList><event obj="power" info="power is shutdown" count="1">PHP0</event><event obj="memcache" info="memcache used than 90%" count="1">PHP1</event><event obj="cpu" info="cpu used than 95%" count="2">Hello,Kitty</event><event obj="disk" info="disk is removed" count="1">PHP3</event>
</EventList>

 

 

 

 

删除节点 
要添加就会有删除。以上节的t.xml文件为操作对象,删除obj=disk的节点。

 

/** 删除节点*/$dom = new DOMDocument('1.0');
$dom->load('./t.xml');
$list = $dom->getElementsByTagName('event');
foreach($list as $item){if($item->getAttribute('obj') == 'disk'){//以obj=disk的节点为操作对象$item->parentNode->removeChild($item);//删除节点}
}
$dom->save('./t.xml');

 

 

 

 

 

看一下操作后的t.xml文件内容,obj=disk的节点已被成功删除。

 

<?xml version="1.0"?>
<EventList><event obj="power" info="power is shutdown" count="1">PHP0</event><event obj="memcache" info="memcache used than 90%" count="1">PHP1</event><event obj="cpu" info="cpu used than 95%" count="2">Hello,Kitty</event></EventList>

 

 

 

 

 

向根节点中添加新的子节点 
以上一节的t.xml为操作对象,向根节点EventList中添加一个新的子节点。

 

/** 向EventList中添加一个子节点*/$dom = new DOMDocument('1.0');
$dom->load('./t.xml');
$event_list = $dom->getElementsByTagName('EventList');//获取根节点
$event = $dom->createElement('event','lenovo');//新建节点
$event_list->item(0)->appendChild($event);//将新建节点添加到根节点中$event_attr_obj = $dom->createAttribute('obj');
$event_attr_obj->value = 'lenovo';
$event->appendChild($event_attr_obj);$event_attr_info = $dom->createAttribute('info');
$event_attr_info->value = 'thinkpad t430';
$event->appendChild($event_attr_info);$dom->save('./t.xml');

 

 

 

看一下操作后的t.xml文件内容,新的子节点已经被插入到根节点中。

 

<?xml version="1.0"?>
<EventList><event obj="power" info="power is shutdown" count="1">PHP0</event><event obj="memcache" info="memcache used than 90%" count="1">PHP1</event><event obj="cpu" info="cpu used than 95%" count="2">Hello,Kitty</event><event obj="lenovo" info="thinkpad t430">lenovo</event></EventList>

 

 

 

关于item($index) 
item(index)DOMNodeListDOMDocumentgetElementsByTagName(name)方法返回的正是一个DOMNodeList对象的实例,所以可以直接调用item(index)t.xmle=dom>getElementsByTagName(EventList)EventListEventListitem(index)时,索引只有index=01e=dom>getElementsByTagName(event)eventevent4item(index)时,索引$index={0,1,2,3},有4个值可以选。每个节点都包含多个属性,它可以以一种键值对数组的形式表现出来,如下所示:

 

object(DOMElement)#3 (18) {["tagName"]=>string(5) "event"["schemaTypeInfo"]=>NULL["nodeName"]=>string(5) "event"["nodeValue"]=>string(11) "Hello,Kitty"["nodeType"]=>int(1)["parentNode"]=>string(22) "(object value omitted)"["childNodes"]=>string(22) "(object value omitted)"["firstChild"]=>string(22) "(object value omitted)"["lastChild"]=>string(22) "(object value omitted)"["previousSibling"]=>string(22) "(object value omitted)"["nextSibling"]=>string(22) "(object value omitted)"["attributes"]=>string(22) "(object value omitted)"["ownerDocument"]=>string(22) "(object value omitted)"["namespaceURI"]=>NULL["prefix"]=>string(0) ""["localName"]=>string(5) "event"["baseURI"]=>string(36) "file:/H:/xampp/htdocs/demo/xml/t.xml"["textContent"]=>string(11) "Hello,Kitty"
}

 

 

 

也可以当做对象的属性来用,例如获取这个节点的值:

 

/** 关于item()*/
$dom = new DOMDocument('1.0');
$dom->load('./t.xml');
$e = $dom->getElementsByTagName('event');
echo $e->item(2)->nodeValue;
//var_dump($e->item(2));
// $e = $dom->getElementsByTagName('EventList');
// var_dump($e->item(0));
//var_dump($e->item(0)->baseURI);
// for($i=0;$i<$e->length;$i++){
//     echo $e->item($i)->nodeValue;
// }

 

 

转载于:https://www.cnblogs.com/aini521521/p/6740361.html

http://www.jmfq.cn/news/5269519.html

相关文章:

  • 青岛企业网站制作哪家好/搜索引擎都有哪些
  • 手机建站平台微点/百度排行榜风云榜
  • 网站做优化应该具备什么/知识营销成功案例介绍
  • 自己的网站打不开/在线识别图片找原图
  • 怎么查看网站disallow/百度指数功能模块
  • 沈阳网站建设 景乔科技/百度快速收录入口
  • 网页3d游戏排行榜/seo算法入门教程
  • 用dw做红米网站/直通车推广
  • 上海 网站公司/湖南网络推广机构
  • 帮一个企业做网站流程/推广方案框架
  • 根据颜色找网站/乱码链接怎么用
  • 合肥网站建设网新/如何利用互联网进行宣传推广
  • 分类网站建设方案/百度做网站推广电话
  • 国外展柜网站/接app推广的单子在哪接
  • 百度站长平台网页版/在百度上怎么打广告
  • 大型网站的标准/百度关键词竞价排名
  • 杭州市河道建设中心网站/最新新闻事件今天
  • 服装怎么做网站推广/百度竞价是什么意思
  • 口红做网站多少钱/军事网站大全军事网
  • asp.net 做g公司网站/百度app旧版本下载
  • 网站去掉后缀html/站长工具网站备案查询
  • 学校网站建设汇报ppt/手机网页设计
  • 网站分级怎么做/商品推广软文写作500字
  • 买高端品牌网站建设/百度的广告
  • 网络科技公司网站/怎么样引流加微信
  • jeecms做企业网站/滁州网站seo
  • 网页设计软件h/免费seo关键词优化服务
  • 上哪儿找做网站/百度如何注册公司网站
  • 手机版网站模板 免费下载/旺道seo推广有用吗
  • 移动端网站怎么做/厦门搜索引擎优化