php解析XML文檔屬性並編輯的代碼

php解析XML文檔屬性並編輯的代碼,有需要的朋友可以參考下。xml現在用的越來越廣泛了,從小的配置文件到有點規模的小型數據庫,無處不見xml的影子。就跟隨本站小編一起去了解下吧,想了解更多相關信息請持續關注我們應屆畢業生考試網!

php解析XML文檔屬性並編輯的代碼

php解析XML文檔屬性並編輯的代碼,有需要的朋友可以參考下。

複製代碼 代碼示例:

<?php

//讀取xml

$dom=new DOMDocument('1.0');

$dom->load('');

$em=$dom->getElementsByTagName('videos');//最外層節點

$em=$em->item(0);

$items=$em->getElementsByTagName('video');//節點

//如果不用讀取直接添加的話把下面這一段去掉即可

foreach($items as $a){

foreach($a->attributes as $b){//$b->nodeValue;節點屬性的值$b->nodeName;節點屬性的'名稱

echo $b->nodeName;

echo ":";

echo $b->nodeValue;

echo "<br/>";

}

}

//下面是往xml寫入一行新的

$t=$dom->createElement('video');//<video

$t->setAttribute('title','1');//<video name="data"

$t->setAttribute('src','2');//<video name="data" src="2"

$t->setAttribute('img','1');//<video name="data" img="1"

$em->appendChild($t);//<video name="data" img="1"/>

$dom->save('');

?>

當時的xml文檔:

複製代碼 代碼示例:

<?xml version="1.0"?>

<videos>

<video img="a" url="1" title="1" nickname="1" tag="1" vid="1" star="1"/>

<video img="b" url="2" title="2" nickname="2" tag="2" vid="2" star="2"/>

<video img="c" url="3" title="3" nickname="3" tag="3" vid="3" star="3"/>

<video title="d" src="2" img="1"/>

</videos>

  以下是最後改的可以修改xml文件:

複製代碼 代碼示例:

<?php

$doc = new DOMDocument();

$doc->load('');

  //查找 videos 節點

$root = $doc->getElementsByTagName('videos');

  //第一個 videos 節點

$root = $root->item(0);

  //查找 videos 節點下的 video 節點

$userid = $root->getElementsByTagName('video');

  //遍歷所有 video 節點

foreach ($userid as $rootdata)

{

  //遍歷每一個 video 節點所有屬性

foreach ($rootdata->attributes as $attrib)

{

$attribName = $attrib->nodeName; //nodeName爲屬性名稱

$attribValue = $attrib->nodeValue; //nodeValue爲屬性內容

  //查找屬性名稱爲ip的節點內容

if ($attribName =='img')

{

  //查找屬性內容爲ip的節點內容

if ($attribValue =='1')

{

//將屬性爲img,img內容爲1的修改爲image;

$rootdata->setAttribute('img','image');

$doc->save('');

}

}

}

}

?>