0

我正在构建一个 XML,例如:

<?xml ... ?>
<root>
    <elements>0</elements>
    <list>
        <element>test1</element>
        <element>test1</element>
        <element>test1</element>
    </list>
</root>

附加所有<element>s 后,我想替换<elements>0</elements><elements>3</elements>例如。

我试过DOMNode::replaceChild了,但没有影响。

$numberOfElements = $xml->createElement('numberOfElements', '0');
$root->appendChild($numberOfElements);

/* append elements and count them */

$root->replaceChild($numberOfElements,
                    $xml->createElement('numberOfElements', $countElements)
               );

如何正确使用 replaceChild 还是有不同的方法?

4

1 回答 1

3

文档

public DOMNode replaceChild ( DOMNode $newnode , DOMNode $oldnode )

这意味着您必须先指定新节点,然后再指定要替换的节点。你搞错了。

编辑:也就是说,为什么不这样做呢?

$numberOfElements->nodeValue = $countElements;
于 2013-11-12T14:18:18.847 回答