(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL xmlwriter >= 0.1.0)
XMLWriter::setIndent -- xmlwriter_set_indent — 字下げの on/off を切り替える
オブジェクト指向型
$enable
): bool手続き型
字下げの on/off を切り替えます。
writer
手続き型のコールでのみ使用します。 変更される XMLWriter のインスタンスです。 このインスタンスは、xmlwriter_open_uri() あるいは xmlwriter_open_memory() を呼び出すことで取得したものです。
enable
字下げを有効にするかどうか。
成功した場合に true
を、失敗した場合に false
を返します。
バージョン | 説明 |
---|---|
8.0.0 |
引数 writer は、XMLWriter
のインスタンスを期待するようになりました。
これより前のバージョンでは、リソースが期待されていました。
|
例1 XMLWriter::setIndent() と mixed content
mixed content では字下げを有効にしてもうまく動きません。 字下げされた文字列は、インライン要素の前に挿入されるからです。
<?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();
?>
上の例の出力は以下となります。
<?xml version="1.0"?> <p>before <a>element</a> after</p>
注意:
xmlwriter がオープンされた時に、字下げの状態はリセットされます。