XMLWriter::writeElement

xmlwriter_write_element

(PHP 5 >= 5.1.2, PHP 7, PECL xmlwriter >= 0.1.0)

XMLWriter::writeElement -- xmlwriter_write_elementWrite full element tag

Descrierea

Stil obiect-orientat

public XMLWriter::writeElement ( string $name , string|null $content = null ) : bool

Stil procedural

xmlwriter_write_element ( XMLWriter $writer , string $name , string|null $content = null ) : bool

Writes a full element tag.

Parametri

xmlwriter

Numai pentru apelurile procedurale. Resursa XMLWriter care este modificată. Această resursă se obține în urma apelării xmlwriter_open_uri() sau xmlwriter_open_memory ().

name

The element name.

content

The element contents.

Valorile întoarse

Întoarce valoarea true în cazul succesului sau false în cazul eșecului.

Istoricul schimbărilor

Versiune Descriere
8.0.0 writer expects an XMLWriter instance now; previously, a resource was expected.

A se vedea și

add a note add a note

User Contributed Notes 3 notes

up
7
googolplex at gmx dot net
15 years ago
The function XMLWriter::writeElement is used to write an element (i.e. a XML tag, an [optional] content, and a closing XML tag) in one line without sub-elements:

<?php

$oXMLout
= new XMLWriter();
$oXMLout->openMemory();
$oXMLout->writeElement("quantity", 8);
$oXMLout->writeElement("price_per_quantity", 110);
print
$oXMLout->outputMemory();

// produces:
// <quantity>8</quantity>
// <price_per_quantity>110</price_per_quantity>

?>

whereas if you want to include sub-elements you have to use the XMLWriter::startElement / XMLWriter::endElement pair:

<?php

$oXMLout
= new XMLWriter();
$oXMLout->openMemory();
$oXMLout->startElement("item");
$oXMLout->writeElement("quantity", 8);
$oXMLout->writeElement("price_per_quantity", 110);
$oXMLout->endElement();
print
$oXMLout->outputMemory();

// produces:
// <item>
// <quantity>8</quantity>
// <price_per_quantity>110</price_per_quantity>
// </item>

?>
up
3
fernandopsilveira at yahoo dot com dot br
7 years ago
Please note that XMLWriter::writeElement will automatically sanitize the content passed as second parameter, so & becomes &amp;, < becomes &lt; and so on.

If you want to input markup directly into an element without validating it, you should use XMLWriter::writeRaw, which writes the contents as is, without any sanitizing.
up
-1
padre[point]cedano[arroba]gmail
4 years ago
Note that if you write element names with spaces or another characters not permitted for W3C Recommendation (https://www.w3.org/TR/xml/#NT-NameStartChar) this method will throw: PHP Warning:  XMLWriter::writeElement(): Invalid Element Name
To Top