The docs don't mention it but this method performs escaping on the value. If you don't want that use createElement() instead.
(PHP 5, PHP 7)
DOMDocument::createTextNode — Create new text node
This function creates a new instance of class DOMText. This node will not show up in the document unless it is inserted with (e.g.) DOMNode::appendChild().
content
The content of the text.
The new DOMText or FALSE
if an error occurred.
The docs don't mention it but this method performs escaping on the value. If you don't want that use createElement() instead.
A quick note to anyone who is using character entities (e.g. ©) in this, and finding them automatically escaped. The correct thing to do here is to use the createEntityReference method (e.g. createEntityReference("copy");), and then appendChild this entity between text nodes.
Example:
<?php
$copyright_text_1 = $this->document->createTextNode("Copyright ");
$copyright_text_2 = $this->document->createTextNode(" Alex Kaye 2009");
$copyright_symbol = $this->document->createEntityReference("copy");
$copyright->appendChild($copyright_text_1);
$copyright->appendChild($copyright_symbol);
$copyright->appendChild($copyright_text_2);
?>