从另一个domdocument对象导入元素时,nodeValue就会丢失



从一个domdocument对象导入一个domdocument对象时,nodeValue似乎丢失了。

Q1。有人知道为什么吗? (这是一个错误?)

Q2。我该如何修复?


示例代码:

$doc1 = new DOMDocument();
$div = $doc1->createElement('div');
$doc2 = new DOMDocument();
$span = $doc2->createElement('span', 'Span text');
$spanCopy = $doc1->importNode($span);
$div->appendChild($spanCopy);
$doc1->appendChild($div);
$otp = $doc1->saveHTML();
var_dump($span->nodeValue);
var_dump($spanCopy->nodeValue);
var_dump($otp);

输出:

string 'Span text' (length=9)
string '' (length=0)
string '<div><span></span></div>' (length=25)

答案:

似乎为了执行深层副本,您需要将真实的参数传递给encortnode。

$spanCopy = $doc1->importNode($span, true);

答案:

似乎为了执行深层副本,您需要将真实的参数传递给encortnode。

$spanCopy = $doc1->importNode($span, true);

最新更新