PHP - Função xmlwriter_start_element_ns ()
Definição e Uso
XML é uma linguagem de marcação para compartilhar os dados na web, XML é tanto para leitura humana quanto para máquina. A extensão XMLWriter possui internamente a API libxml xmlWriter e é usada para escrever / criar o conteúdo de um documento XML. Os documentos XML gerados por isso não são armazenados em cache e são apenas encaminhados.
o xmlwriter_start_element_ns() A função aceita um objeto da classe XMLWriter, três valores de string representando um prefixo de namespace, o nome do elemento e o uri do namespace respectivamente, como parâmetros e cria uma tag de início do elemento.
Sintaxe
xmlwriter_start_element_ns($writer, $prefix, $name ,$uri);
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 | writer(Mandatory) Este é um objeto da classe XMLWriter que representa o documento XML que você deseja modificar / criar. |
2 | Prefix(Mandatory) Este é um valor de string que representa o prefixo do namespace |
3 | name(Mandatory) Este é um valor de string que representa o nome do elemento. |
4 | uri(Mandatory) Este é um valor de string que especifica o uri do namespace. |
Valores Retornados
Esta função retorna um valor booleano que é TRUE em caso de sucesso e FALSE em caso de falha.
Versão PHP
Esta função foi introduzida pela primeira vez no PHP Versão 5 e funciona em todas as versões posteriores.
Exemplo
O exemplo a seguir demonstra o uso do xmlwriter_start_element_ns() função -
<?php
//Creating an XMLWriter
$writer = new XMLWriter();
//Opening a writer
$uri = "result.xml";
$writer = xmlwriter_open_uri($uri);
//Starting the document
xmlwriter_start_document($writer);
//Creating XML elements
xmlwriter_set_indent($writer,TRUE);
xmlwriter_set_indent_string($writer, " ");
//Starting an element
xmlwriter_start_element($writer, 'Data');
//Starting a namespaced element tag
xmlwriter_start_element_ns($writer, 'ns', 'name', 'test.uri');
//Adding text to the element
xmlwriter_text($writer, 'sample_data');
xmlwriter_end_element($writer);
//Ending the element
xmlwriter_end_element($writer);
//Ending the document
xmlwriter_end_document($writer);
print("XML Document Created");
?>
Isso irá gerar o seguinte documento XML -
<?xml version="1.0"?>
<Tutorial>
<ns:name xmlns:ns="test.uri">JavaFX</ns:name>
<Author>Krishna</Author>
<Pages>535</Pages>
</Tutorial>
Exemplo
A seguir está o exemplo desta função no estilo orientado a objetos -
<?php
//Creating an XMLWriter
$writer = new XMLWriter();
//Opening a writer
$uri = "result.xml";
$writer -> openUri($uri);
//Starting the document
$writer->startDocument();
//Creating XML elements
$writer->setIndent(TRUE);
$writer->setIndentString(" ");
//Starting an element
$writer->startElement('Data');
//Starting a namespaced element tag
$writer->startElementNs('ns', 'name', 'test.uri');
//Adding text to the element
$writer->text('sample_data');
$writer->endElement();
//Ending the element
$writer->endElement();
//Ending the document
$writer->endDocument();
print("XML Document Created");
?>
Isso irá gerar o seguinte documento XML -
<?xml version="1.0"?>
<Data>
<ns:name xmlns:ns="test.uri">sample_data</ns:name>
</Data>