DOMDocument::createElementNS
(PHP 5, PHP 7, PHP 8)
DOMDocument::createElementNS — Cria novo nó de elemento com um namespace associado
Descrição
$namespace
, string $qualifiedName
, string $value
= ""): DOMElement|falseEsta função cria um novo nó de elemento com um namespace associado. Este nó não aparecerá no documento a menos que seja inserido, por exemplo, com DOMNode::appendChild().
Parâmetros
namespace
-
O URI do namespace.
qualifiedName
-
O nome qualificado do elemento, como
prefixo:nomedatag
. value
-
O valor do elemento. Por padrão, um elemento vazio será criado. Pode-se também pode definir o valor posteriormente com DOMElement::$nodeValue.
Valor Retornado
O novo DOMElement ou false
se ocorrer um erro.
Erros/Exceções
DOM_INVALID_CHARACTER_ERR
-
Gerado se
qualifiedName
contiver um caractere inválido. DOM_NAMESPACE_ERR
-
Gerado se
qualifiedName
for um nome qualificado malformado.
Exemplos
Example #1 Criando um novo elemento e inserindo-o como raiz
<?php
$dom = new DOMDocument('1.0', 'utf-8');
$element = $dom->createElementNS('http://www.example.com/XFoo', 'xfoo:test', 'This is the root element!');
// Inserimos o novo elemento como raiz (filho do documento)
$dom->appendChild($element);
echo $dom->saveXML();
?>
O exemplo acima produzirá:
<?xml version="1.0" encoding="utf-8"?> <xfoo:test xmlns:xfoo="http://www.example.com/XFoo">This is the root element!</xfoo:test>
Example #2 Um exemplo de prefixo de namespace
<?php
$doc = new DOMDocument('1.0', 'utf-8');
$doc->formatOutput = true;
$root = $doc->createElementNS('http://www.w3.org/2005/Atom', 'element');
$doc->appendChild($root);
$root->setAttributeNS('http://www.w3.org/2000/xmlns/' ,'xmlns:g', 'http://base.google.com/ns/1.0');
$item = $doc->createElementNS('http://base.google.com/ns/1.0', 'g:item_type', 'house');
$root->appendChild($item);
echo $doc->saveXML(), "\n";
echo $item->namespaceURI, "\n"; // Outputs: http://base.google.com/ns/1.0
echo $item->prefix, "\n"; // Outputs: g
echo $item->localName, "\n"; // Outputs: item_type
?>
O exemplo acima produzirá:
<?xml version="1.0" encoding="utf-8"?> <element xmlns="http://www.w3.org/2005/Atom" xmlns:g="http://base.google.com/ns/1.0"> <g:item_type>house</g:item_type> </element> http://base.google.com/ns/1.0 g item_type
Veja Também
- DOMNode::appendChild() - Adiciona um novo filho ao final dos filhos
- DOMDocument::createAttribute() - Cria um novo attribute
- DOMDocument::createAttributeNS() - Cria um novo nó de atributo com um namespace associado
- DOMDocument::createCDATASection() - Cria um novo nó de CDATA
- DOMDocument::createComment() - Cria novo nó de comentárioe
- DOMDocument::createDocumentFragment() - Cria novo fragmento de documento
- DOMDocument::createElement() - Cria novo nó de elemento
- DOMDocument::createEntityReference() - Cria novo nó de referência de entidade
- DOMDocument::createProcessingInstruction() - Cria novo nó PI (Processing Instruction)
- DOMDocument::createTextNode() - Cria novo nó de texto