Note that this function is buggy. You have to manually escape the $value argument with htmlspecialchars.
See: http://bugs.php.net/bug.php?id=31191
(PHP 5, PHP 7, PHP 8)
DOMElement::__construct — 新しい DOMElement オブジェクトを作成する
$qualifiedName
, ?string $value
= null
, string $namespace
= "")新しい DOMElement オブジェクトを作成します。 このオブジェクトは読み込み専用です。このオブジェクトをドキュメントに 追加することが可能ですが、ノードがドキュメントに関連付けられるまでは ノードを追加することはできません。書き込み可能なノードを作成するには、 DOMDocument::createElement あるいは DOMDocument::createElementNS を使用します。
qualifiedName
要素のタグ名。namespaceURI をともに指定した場合、 この URI に関連付けられたプレフィックスが与えられます。
value
要素の値。
namespace
指定した名前空間の中で要素を作成するための 名前空間 URI。
例1 新しい DOMElement を作成する
<?php
$dom = new DOMDocument('1.0', 'iso-8859-1');
$element = $dom->appendChild(new DOMElement('root'));
$element_ns = new DOMElement('pr:node1', 'thisvalue', 'http://xyz');
$element->appendChild($element_ns);
echo $dom->saveXML(); /* <?xml version="1.0" encoding="iso-8859-1"?>
<root><pr:node1 xmlns:pr="http://xyz">thisvalue</pr:node1></root> */
?>
Note that this function is buggy. You have to manually escape the $value argument with htmlspecialchars.
See: http://bugs.php.net/bug.php?id=31191
If you like to view an element simply do:
<?php
echo htmlentities($element->C14N());
?>
Undocumented but found ;)
Remember, Dom-Nodes mustn't start with a number:
allowed:
<t12345t4>Value</t12345t4>
Not allowed:
<12345t4>VALUE</12345t4>