2012-12-08 40 views
0

刪除子節點我有這個XML:如何從XML文件

<photo> 
<position>1</position> 
<title>panos1</title> 
</photo> 


<photo> 
<position>2</position> 
<title>panos2</title> 
</photo> 

<photo> 
<position>3</position> 
<title>panos3</title> 
</photo> 

<photo> 
<position>4</position> 
<title>panos4</title> 
</photo> 

我想刪除position標籤使用PHP值4

我使用Xpath

+0

要刪除只是'photo'子元素'position'或要刪除相應的親'photo'完全元素? – Ally

+0

谷歌搜索'我怎樣才能從XML文件php'刪除子節點顯示了一些可喜的成果 –

+0

請參閱本: http://stackoverflow.com/questions/4667433/delete-child-node-in-xml-file -with-php – laxonline

回答

0

您可以使用removeChild之()。 看看這個:

<?php 
$xml = new DOMDocument(); 
$xml->formatOutput = true; 
$xml->preserveWhiteSpace = false; 
$xml->loadXML($str) or die("Error"); 

// original 
echo "<xmp>OLD:\n". $xml->saveXML() ."</xmp>"; 

// get document element 
$root = $xml->documentElement; 
$fnode = $root->firstChild; 

//get a node 
$ori = $fnode->childNodes->item(1); 

// remove 
$fnode->removeChild($ori); 

echo "<xmp>NEW:\n". $xml->saveXML() ."</xmp>"; 
?>