How does one change the element content with PHP DOM functions?
In depth... I've queried my element, modified attributes and now want to change the content of it, how can I do this?
Set the nodeValue
property if you want to set text content of an element:
$el = $dom->getElementById('foo');
$el->nodeValue = 'hello world';
Note that this automatically escapes <
and >
, so you can't insert HTML like this. For that you'll have to do something like DOMDocument::createDocumentFragment
:
$frag = $dom->createDocumentFragment();
$frag->appendXML('<h1>foo</h1>');
$el->appendChild($frag);