PHP Conference Japan 2024

DOMDocumentFragment::appendXML

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

DOMDocumentFragment::appendXML附加原始 XML 資料

說明

public DOMDocumentFragment::appendXML(字串 $data): 布林值

將原始 XML 資料附加到 DOMDocumentFragment。

此方法不是 DOM 標準的一部分。它被建立為一種更簡單的方法,用於在 DOMDocument 中附加 XML DocumentFragment。

如果您想遵循標準,您必須建立一個具有虛擬根節點的臨時 DOMDocument,然後迴圈處理 XML 資料根節點的子節點以附加它們。

參數

data

要附加的 XML。

回傳值

成功時回傳 true,失敗時回傳 false

範例

範例 #1:將 XML 資料附加到您的文件

<?php
$doc
= new DOMDocument();
$doc->loadXML("<root/>");
$f = $doc->createDocumentFragment();
$f->appendXML("<foo>text</foo><bar>text2</bar>");
$doc->documentElement->appendChild($f);
echo
$doc->saveXML();
?>

以上範例將輸出:

<?xml version="1.0"?>
<root><foo>text</foo><bar>text2</bar></root>

新增註釋

使用者貢獻的註釋 2 則註釋

lpetrov(AT)axisvista.com
17 年前
這裡有一個(或許)更好的範例
/**
* 用於將 $node (DOMNode) 替換為 XML 程式碼(字串)的輔助函式
* @var DOMNode $node
*
* @var string $xml

*/
public function replaceNodeXML(&$node,$xml) {
$f = $this->dom->createDocumentFragment();
$f->appendXML($xml);
$node->parentNode->replaceChild($f,$node);
}

複製自 http://blog.axisvista.com/?p=35 的「PHP5 Dom Based Template」文章
感謝 Christoph。
2 年前
像 " ' & < > 這樣的字串可能需要事先進行跳脫。
在這種情況下,您可以使用 htmlspecialchars()。
To Top