DOMDocument::createElement

(PHP 5, PHP 7, PHP 8)

DOMDocument::createElementCreate new element node

说明

public DOMDocument::createElement(string $localName, string $value = ""): DOMElement|false

This function creates a new instance of class DOMElement. 此节点出现在文档中,除非是用诸如 DOMNode->appendChild() 等函数来将其插入。

参数

localName

The tag name of the element.

value

The value of the element. By default, an empty element will be created. The value can also be set later with DOMElement::$nodeValue.

The value is used verbatim except that the < and > entity references will escaped. Note that & has to be manually escaped; otherwise it is regarded as starting an entity reference. Also " won't be escaped.

返回值

Returns a new instance of class DOMElement or false if an error occurred.

错误/异常

DOM_INVALID_CHARACTER_ERR

Raised if localName contains an invalid character.

示例

示例 #1 Creating a new element and inserting it as root

<?php

$dom
= new DOMDocument('1.0', 'utf-8');

$element = $dom->createElement('test', 'This is the root element!');

// We insert the new element as root (child of the document)
$dom->appendChild($element);

echo
$dom->saveXML();
?>

以上示例会输出:

<?xml version="1.0" encoding="utf-8"?>
<test>This is the root element!</test>

示例 #2 Passing text containing an unescaped & as value

<?php
$dom
= new DOMDocument('1.0', 'utf-8');
$element = $dom->createElement('foo', 'me & you');
$dom->appendChild($element);
echo
$dom->saveXML();
?>

以上示例的输出类似于:

Warning: DOMDocument::createElement(): unterminated entity reference             you in /in/BjTCg on line 4
<?xml version="1.0" encoding="utf-8"?>
<foo/>

注释

注意:

The value will not be escaped. Use DOMDocument::createTextNode() to create a text node with escaping support.

参见