如何使用 PHP DOMDocument 在新创建的元素中添加文本节点
How to add text node in new created element with PHP DOMDocument
如何向新创建的标签添加内容?例如,我需要创建如下标签:
<script src="https://whosebug.com/">
alert("ok");
</script>
我实现了以下代码:
$finalDom = new DOMDocument;
$finalDom->loadHTML("", LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$newElement = $finalDom->createElement("script");
$newElement->setAttribute("src", "https://whosebug.com/");
$finalDom->appendChild($newElement);
这段代码的结果是一个空的脚本标签:
<script src="https://whosebug.com/"></script>
您可以使用createTextNode为元素添加文本节点,如
....
$newElement->setAttribute("src", "https://whosebug.com/");
$finalDom->appendChild($newElement);
$newElement->appendChild($finalDom->createTextNode('your text here'));
....
您可以使用$textContent property of DOMElement设置内容。
$newElement = $finalDom->createElement("script");
$newElement->setAttribute("src", "https://whosebug.com/");
$newElement->textContent = 'alert("ok");';
您可以使用这三个选项中的任何一个来添加文本
elem.append(document.createTextNode(text))
elem.innerHTML = text
elem.textContent = text
如何向新创建的标签添加内容?例如,我需要创建如下标签:
<script src="https://whosebug.com/">
alert("ok");
</script>
我实现了以下代码:
$finalDom = new DOMDocument;
$finalDom->loadHTML("", LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$newElement = $finalDom->createElement("script");
$newElement->setAttribute("src", "https://whosebug.com/");
$finalDom->appendChild($newElement);
这段代码的结果是一个空的脚本标签:
<script src="https://whosebug.com/"></script>
您可以使用createTextNode为元素添加文本节点,如
....
$newElement->setAttribute("src", "https://whosebug.com/");
$finalDom->appendChild($newElement);
$newElement->appendChild($finalDom->createTextNode('your text here'));
....
您可以使用$textContent property of DOMElement设置内容。
$newElement = $finalDom->createElement("script");
$newElement->setAttribute("src", "https://whosebug.com/");
$newElement->textContent = 'alert("ok");';
您可以使用这三个选项中的任何一个来添加文本
elem.append(document.createTextNode(text))
elem.innerHTML = text
elem.textContent = text