$doc = new DOMDocument;
$doc->load($filename);
$dups = $doc->documentElement->getElementsByTagName('dup');
foreach($dups as $dup)
{
if($dup->getAttribute('id')=="1")
{
$link = $dup->getElementsByTagName('link')->item(0);
$tmpNode = $link->cloneNode();
$tmpNode->nodeValue = "link1";
$tmpNode = $link->parentNode->appendChild($tmpNode);
$link->parentNode->replaceChild($tmpNode,$link);
$title = $dup->getElementsByTagName('title')->item(0);
$tmpNode2 = $title->cloneNode();
$tmpNode2->nodeValue = "title1";
$tmpNode2 = $title->parentNode->appendChild($tmpNode2);
$title->parentNode->replaceChild($tmpNode2,$title);
}
}
$doc->save($filename
$xmldata=simplexml_load_file($filename);
$dup = $xmldata->xpath("/document/dup[@id='1']");
$dup[0]->link = 'link2';
$strXml = $xmldata->asXML();
file_put_contents($filename, $strXml);