0
我試圖用XML輸出一個PHP腳本的結果,但不是很好的結果。以XML格式輸出PHP
這是一條線的XML文件,我得到(沒有錯誤消息)
<?xml version="1.0" encoding="UTF-8"?>
,這是我希望看到
<data>
<thread>
<id>my data here</id>
<author>
<name>my data here/name>
<url>my data here</url>
<id>my data here</id>
</author>
<title>my data here</title>
<reactions>my data here</reactions>
<dislikes>my data here</dislikes>
<userScore>my data here</userScore>
<createdAt>my data here</createdAt>
<slug>my data here</slug>
<postNumber>my data here</postNumber>
<link>my data here</link>
<likes>my data here</likes>
<message>my data here</message>
<category>my data here</category>
<score>my data here</score>
<categoryLink>my data here</categoryLink>
</thread>
</data>
這是我的代碼是什麼:
//Create XML
$xml = new DOMDocument("1.0", 'UTF-8');
$root = $xml->createElement("data");
$xml->appendChild($root);
$thread = $xml->createElement("thread");
$threadID = $xml->createElement("id");
$threadID->appendChild($xml->createTextNode($details->id));
$thread->appendChild($threadID);
$author = $xml->createElement("author");
$thread->appendChild($author);
$authorName = $xml->createElement("name");
$authorName->appendChild($xml->createTextNode($parsed_authorName));
$author->appendChild($authorName);
$authorUrl = $xml->createElement("url");
$authorUrl->appendChild($xml->createTextNode($parsed_authorUrl));
$author->appendChild($authorUrl);
$authorID = $xml->createElement("id");
$authorID->appendChild($xml->createTextNode($details->author));
$author->appendChild($authorID);
$threadTitle = $xml->createElement("title");
$threadTitle->appendChild($xml->createTextNode($details->title));
$thread->appendChild($threadTitle);
$threadReactions = $xml->createElement("reactions");
$threadReactions->appendChild($xml->createTextNode($details->reactions));
$thread->appendChild($threadReactions);
$threadDislikes = $xml->createElement("dislikes");
$threadDislikes->appendChild($xml->createTextNode($details->dislikes));
$thread->appendChild($threadDislikes);
$threadUserScore = $xml->createElement("userScore");
$threadUserScore->appendChild($xml->createTextNode($details->userScore));
$thread->appendChild($threadUserScore);
$threadCreatedAt = $xml->createElement("createdAt");
$threadCreatedAt->appendChild($xml->createTextNode($details->createdAt));
$thread->appendChild($threadCreatedAt);
$threadSlug = $xml->createElement("slug");
$threadSlug->appendChild($xml->createTextNode($details->slug));
$thread->appendChild($threadSlug);
$threadPostNumber = $xml->createElement("postNumber");
$threadPostNumber->appendChild($xml->createTextNode($details->posts));
$thread->appendChild($threadPostNumber);
$threadLink = $xml->createElement("link");
$threadLink->appendChild($xml->createTextNode($details->link));
$thread->appendChild($threadLink);
$threadLikes = $xml->createElement("likes");
$threadLikes->appendChild($xml->createTextNode($details->likes));
$thread->appendChild($threadLikes);
$threadMessage = $xml->createElement("likes");
$threadMessage->appendChild($xml->createTextNode($parsed_threadMessage));
$thread->appendChild($threadMessage);
$threadCategory = $xml->createElement("category");
$threadCategory->appendChild($xml->createTextNode($details->category));
$thread->appendChild($threadCategory);
$threadScore = $xml->createElement("likes");
$threadScore->appendChild($xml->createTextNode($parsed_threadScore));
$thread->appendChild($threadScore);
$threadCategoryLink = $xml->createElement("likes");
$threadCategoryLink->appendChild($xml->createTextNode($parsed_threadCategoryLink));
$thread->appendChild($threadCategoryLink);
$thread->appendChild($root);
$xml->formatOutput = true;
echo "<xmp>". $xml->saveXML() ."</xmp>";
$xml->save("test1.xml") or die("Error");
可能是我添加XML元素的順序是錯誤的?
到最後,你寫'$ thread-> appendChild($ root);',我想這是'$ root-> appendChild($ thread);' – MatRt 2013-03-17 23:04:16