2011-12-07 79 views
0

我有下面的代碼來創建一個XML文件裹對於每組用SimpleXML元素的元素/ DOM文檔

<?php 
try 
{ 
    $dom = new domDocument; 
    $dom->formatOutput = true; 
    $root = $dom->appendChild($dom->createElement("items")); 
    $sxe = simplexml_import_dom($dom); 

    $sxe->addChild("model", "HTC Desire"); 
    $sxe->addChild("model", "Motorola Atrix"); 
    echo $sxe->asXML(); 
} 
catch(Exception $e) 
{ 
    echo $e->getMessage(); 
} 
?> 

雖然執行該代碼時,將產生的內容喜歡:

<?xml version="1.0"?> 
<items> 
<model>HTC Desire</model> 
<model>Motorola Atrix</model> 
</items> 

但是,我想換每個模型稱爲item的元素,結果應該是:

<?xml version="1.0"?> 
<items> 
<item><model>HTC Desire</model></item> 
<item><model>Motorola Atrix</model></item> 
</items> 

任何人都可以建議如何做到這一點?

回答

0

addChild方法返回一個SimpleXMLElement對象,表示添加到XML節點的子對象。這允許方法鏈接,像這樣:

try 
{ 
    $dom = new domDocument; 
    $dom->formatOutput = true; 

    $root = $dom->appendChild($dom->createElement("items")); 
    $sxe = simplexml_import_dom($dom); 
    $sxe->addChild("item")->addChild("model", "HTC Desire"); 
    $sxe->addChild("item")->addChild("model", "Motorola Atrix"); 

    echo $sxe->asXML(); 
} 
catch(Exception $e) 
{ 
    echo $e->getMessage(); 
} 
+0

我都試過了,但我得到了''之前。不知道發生了什麼。無論如何,您的建議工作,謝謝 –