php解析XML文檔屬性並編輯的代碼,有需要的朋友可以參考下。xml現在用的越來越廣泛了,從小的配置文件到有點規模的小型數據庫,無處不見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('');
}
}
}
}
?>