这篇文章将为大家详细讲解有关php如何修改、增加xml结点属性,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
温江网站建设公司成都创新互联公司,温江网站设计制作,有大型网站制作公司丰富经验。已为温江上千提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的温江做网站的公司定做!1、xml文件
代码如下:
2、php代码
复制代码 代码如下:
$dom=new DOMDocument('1.0');
$dom->load('x.xml');
$em=$dom->getElementsByTagName('emotions');
$em=$em->item(0);
$items=$em->getElementsByTagName('item');
foreach($items as $a){
foreach($a->attributes as $b){
if($b->nodeValue=='Birthday'){
$a->setAttribute('name','nBirthday');
}
}
}
$t=$dom->createElement('item');
$t->setAttribute('name','x');
$t->setAttribute('src','www.baidu.com');
$t->setAttribute('duration','duration');
$em->appendChild($t);
$dom->save('x.xml');
?>
PHP解析XML文档属性并编辑
复制代码 代码如下:
//读取xml
$dom=new DOMDocument('1.0');
$dom->load('data.xml');
$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 "
";
}
}
//下面是往xml写入一行新的
$t=$dom->createElement('video');//$t->setAttribute('title','1');//$t->setAttribute('src','2');//$t->setAttribute('img','1');//$em->appendChild($t);//
$dom->save('data.xml');
?>
当时的xml文档:
复制代码 代码如下:
//下面这一个文件是后改的可以修改xml
复制代码 代码如下:
$doc = new DOMDocument();
$doc->load('data.xml');
//查找 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('data.xml');
}
}
}
}
?>
关于“php如何修改、增加xml结点属性”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。