2012-05-17 2 views
0

XML 파일에 쓰려고하는데 구문을 잘 모르겠습니다! XML 파일을 열 수 있습니다.DOM을 사용하여 외부 XML에 쓰기

<?php 
$doc = new DOMDocument(); 
$doc->load("xml/latestContent.xml"); 
$latestpic = $doc->getElementsByTagName("latestpic"); 
?> 

내가 이전 방법을 사용했다, 그러나 이것은 내가 더 이상 사용하지 않으려는 심플 XML, 사용하고 : : 여기 내 코드는 지금까지입니다

<?php 
$xml = simplexml_load_file("xml/latestContent.xml"); 
$sxe = new SimpleXMLElement($xml->asXML()); 
$latestpic = $sxe->addChild("latestpic"); 
$latestpic->addChild("item", "Latest Pic"); 
$latestpic->addChild("content", $latestPic); 

$latestvid = $sxe->addChild("latestvideo"); 
$latestvid->addChild("item", "Latest Video"); 
$latestvid->addChild("content", $videoData); 

$latestfact = $sxe->addChild("latestfact"); 
$latestfact->addChild("item", "Latest Fact"); 
$latestfact->addChild("content", $factData); 
$sxe->asXML("xml/latestContent.xml"); 
?> 

가 어떻게 내 DOM을 만들 수 있습니다 단순한 방법과 같은 일을합니까?

미리 감사드립니다.

답변

1

SimpleXML 코드의 작업 내용에 따라 latestContent.xml 파일의 모양을 추측합니다.

<?xml version="1.0" ?> 
<root /> 

당신이 DOMDocument를 다음과 같을 것이다 사용 SimpleXML을 썼다 동등한 코드 : 현재 코드를 이해하기 위해서는 그것이 SimpleXML을 코드에 의해 수정되기 전에는 latestContent.xml 가능성이 과 같은

<?php 
// Load XML 
$doc = new DOMDocument(); 
$doc->load("xml/latestContent.xml"); 

// Get root element 
$rootElement = $doc->documentElement; 

// Create latestpic element as a child of the root element 
$latestPicElement = $rootElement->appendChild($doc->createElement("latestpic")); 
$latestPicElement->appendChild($doc->createElement("item", "Latest Pic")); 
$latestPicElement->appendChild($doc->createElement("content", $latestPic)); 

// Create latestvideo element as a child of the root element 
$latestVidElement = $rootElement->appendChild($doc->createElement("latestvideo")); 
$latestVidElement->appendChild($doc->createElement("item", "Latest Video")); 
$latestVidElement->appendChild($doc->createElement("content", $videoData)); 

// Create latestfact element as a child of the root element 
$latestFactElement = $rootElement->appendChild($doc->createElement("latestfact")); 
$latestFactElement->appendChild($doc->createElement("item", "Latest Fact")); 
$latestFactElement->appendChild($doc->createElement("content", $factData)); 

// Save back to XML file 
$doc->save("xml/latestContent.xml"); 
?> 

HTH

+0

딱! 정말 고맙습니다! – DommyCastles