Reputation: 13357
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?
Upvotes: 10
Views: 14761
Reputation: 237847
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);
Upvotes: 36