CakeFest 2024: The Official CakePHP Conference

XMLWriter::setIndent

xmlwriter_set_indent

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

XMLWriter::setIndent -- xmlwriter_set_indentToggle indentation on/off

Description

Object-oriented style

public XMLWriter::setIndent(bool $enable): bool

Procedural style

xmlwriter_set_indent(XMLWriter $writer, bool $enable): bool

Toggles indentation on or off.

Parameters

writer

Only for procedural calls. The XMLWriter instance that is being modified. This object is returned from a call to xmlwriter_open_uri() or xmlwriter_open_memory().

enable

Whether indentation is enabled.

Return Values

Returns true on success or false on failure.

Changelog

Version Description
8.0.0 writer expects an XMLWriter instance now; previously, a resource was expected.

Examples

Example #1 XMLWriter::setIndent() and mixed Content

Enabling indentation is not suitable for mixed content, because the indent string is also inserted before inline elements.

<?php
$writer
= new XMLWriter();
$writer->openMemory();
$writer->setIndent(2);
$writer->startDocument();
$writer->startElement('p');
$writer->text('before');
$writer->writeElement('a', 'element');
$writer->text('after');
$writer->endElement();
$writer->endDocument();
echo
$writer->outputMemory();
?>

The above example will output:

<?xml version="1.0"?>
<p>before <a>element</a>
after</p>

Notes

Note:

The indent is reset when an xmlwriter is opened.

See Also

add a note

User Contributed Notes 1 note

up
2
info at ensostudio dot ru
2 years ago
NOTE: $enable can be integer as in example, or boolean.
To Top