突然发现一个问题.就是我所替换的内容都是一样的.怎么能令它们变成不一样啊.. //建立根节点
$parent=new DOMDocument;

//建立节点的数组
$parent_Element_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
$title_Elemnt_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
$url_Elemnt_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
$image_Elemnt_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
//建立新的节点
for($i=0;$i<10;$i++)
{ //建立父节点
$parent_Elemnt_List[$i]=$parent->createElement('item');

//建立子节点
$title_Elemnt_List[$i]=$parent->createElement('title',rand(0,100));
$url_Elemnt_List[$i]=$parent->createElement('url',rand(30,100));
$image_Elemnt_List[$i]=$parent->createElement('image',rand(50,100));
//把子节点添加进父节点
$parent_Elemnt_List[$i]->appendChild($title_Elemnt_List[$i]);
$parent_Elemnt_List[$i]->appendChild($url_Elemnt_List[$i]);
$parent_Elemnt_List[$i]->appendChild($image_Elemnt_List[$i]);

//把父节点添加到根节点
$parent->appendChild($parent_Elemnt_List[$i]); }


//加载xml
$dom = new DOMDocument();
$dom->load('http://localhost/website/fade.xml');

//echo $dom->saveXML();//输出整个XML文档
//$root = $dom->documentElement;
//echo $root->nodeName;//输出根元素的节点名
//echo $root->childNodes->length;//输出根元素包含的子节点个数
//echo $root->firstChild->nodeName;
//echo $root->firstChild->childNodes->length;//输出根元素第一个子节点的子节点个数

//查找需要替换的节点
$xpath=new DOMXPath($dom);
$nodelist=$xpath->query('/content/item');
$oldnode=array();
for($i=0;$i<10;$i++)
{
$oldnode[$i]=$nodelist->item($i);

}

//把新节点导入
for($j=0;$j<10;$j++)
{
$newnode[$j]   =   $dom->importNode($parent->documentElement,   true);

}


//替换
for($k=0;$k<10;$k++)
{
$oldnode[$k]->parentNode->replaceChild($newnode[$k],   $oldnode[$k]);

}

echo $dom->save('ceshi2.xml');

解决方案 »

  1.   

    原来在这里……
    发上来~~
    20分呢~~不要白不要.<?php
    //建立根节点
    $parentDom = new DOMDocument();
    //$parent = $parentDom->createElement('content');
    //建立节点的数组
    $parent_Element_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
    $title_Elemnt_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
    $url_Elemnt_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
    $image_Elemnt_List=array('one,two,three,four,five,six,seven,eight,nine,ten');
    //建立新的节点
    for($i=0;$i<3;$i++)
    {
    //建立父节点
    $parent_Elemnt_List[$i]= $parentDom->createElement('item');
    //建立子节点
    $title_Elemnt_List[$i]= $parentDom->createElement('title',rand(0,100));
    $url_Elemnt_List[$i]= $parentDom->createElement('url',rand(30,100));
    $image_Elemnt_List[$i]= $parentDom->createElement('image',rand(50,100));
    //把子节点添加进父节点
    $parent_Elemnt_List[$i]->appendChild($title_Elemnt_List[$i]);
    $parent_Elemnt_List[$i]->appendChild($url_Elemnt_List[$i]);
    $parent_Elemnt_List[$i]->appendChild($image_Elemnt_List[$i]);
    //把父节点添加到根节点
    $parentDom->appendChild($parent_Elemnt_List[$i]);
    }
    //加载xml
    $dom = new DOMDocument();
    $dom->load('fade.xml');
    //查找需要替换的节点
    $xpath=new DOMXPath($dom);
    $nodelist = $xpath->query('/content/item');
    $oldnode=array();
    $newNodeList = $parentDom->getElementsByTagName('item');
    for($i=0;$i<3;$i++)
    {
    $oldnode[$i] = $nodelist->item($i);
    $newEntry = $newNodeList->item($i);
    $newnode  =  $dom->importNode($newEntry,true);
    $oldnode[$i]->parentNode->replaceChild($newnode,$oldnode[$i]);
    }
    echo $dom->saveXML();
    ?>