2016-06-07 92 views
0

我有一個問題:我想使用的DomDocument創建一個XML文件,我想有這樣的輸出:創建一個使用DOM對象白字的XML文檔

<?xml version="1.0" encoding="UTF-8"?> 
<winstrom version="1.0"> 
<main_tag> 
<child_tag>example</child_tag> 
</main_tag> 
<winstrom> 

的問題是與第二行 - 如果我把它寫成如下那麼輸出是「無效字符錯誤」。我想這是不允許在那裏有空間字符...但是我需要這樣,所以有什麼選擇?

$dom = new DomDocument('1.0', 'UTF-8'); 

$root = $dom->createElement('winstrom version=1.0'); 
$dom->appendChild($root); 

$item = $dom->createElement('hlavni_tag'); 
$root2->appendChild($item); 

$text = $dom->createTextNode('example'); 
$item->appendChild($text); 

$dom->formatOutput = true; 
echo $dom->saveXML(); 
+0

你可以子它的undescore,如果不是一個HTML實體  – atoms

回答

1

似乎對XML元素是什麼以及它如何區別於屬性存在誤解。

試試這個代碼:

<?php 
$dom = new DomDocument('1.0', 'UTF-8'); 

$root = $dom->createElement('winstrom'); 
$root->setAttribute("version","1.0"); 
$dom->appendChild($root); 

$root2 = $dom->createElement("main_tag"); //You forgot this part 
$root->appendChild($root2); 

$item = $dom->createElement('hlavni_tag'); //Should it be "child_tag"? 
$root2->appendChild($item); 

$text = $dom->createTextNode('example'); 
$item->appendChild($text); 

$dom->formatOutput = true; 
echo $dom->saveXML(); 
+0

先生,你應該有一個medail ......非常感謝你什麼......當我現在看到它變得非常明顯...需要學習... moreee! –

+0

歡迎來到SO,lada Prchal,通過點擊複選標記來「接受」有用的答案是一種很好的做法。 –