jolt jolt - 3 years ago 115
PHP Question

DOM change element content

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?

Answer Source

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);
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download