PHP Velho Oeste 2024

XMLWriter::text

xmlwriter_text

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

XMLWriter::text -- xmlwriter_textテキストを書き込む

説明

オブジェクト指向型

XMLWriter::text ( string $content ) : bool

手続き型

xmlwriter_text ( resource $xmlwriter , string $content ) : bool

テキストを書き込みます。

パラメータ

xmlwriter

手続き型のコールでのみ使用します。 変更される XMLWriter resource です。 このリソースは、xmlwriter_open_uri() あるいは xmlwriter_open_memory() のコールによって取得したものです。

content

テキストの内容。 <, >, &, " は、実体参照として書き込みます。 (つまり、 &lt;, &gt;, &amp;, &quot;, をそれぞれ書き込みます)。 それ以外の文字は、' を含めてそのまま書き込みます。 XML で特別な文字や、実体参照をそのまま書き込むには、 xmlwriter_write_raw() を使わなければなりません。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

add a note add a note

User Contributed Notes 2 notes

up
1
luku at example dot com
5 years ago
Corrected previous comment!
Note that $content is automatically sanitized/escaped:
> into &gt;
< into &lt;
& into &amp;
" into &quot;
However, single quotes stay unescaped! This is major drawback, if you're creating sitemaps. To fix that and to prevent double escaping, you will need to use XMLWriter::writeRaw or extend the XMLWriter class and escape the content yourself with i.e.
<?php
$content
= htmlspecialchars($content, ENT_QUOTES | ENT_XML1, 'UTF-8');
?>
XMLWriter::text or XMLWriter::writeElement would double escape &apos; and result in &amp;apos;
up
0
luku at example dot com
5 years ago
Note that $content is automatically sanitized/escaped:
> into &gt;
< into &lt;
& into &amp;
" into &quot;
However, single quotes stay unescaped! This is major drawback, if you're creating sitemaps. You need to escape ' into &apos; before passing it to XMLWriter::text or XMLWriter::writeElement or extend the XMLWriter class.
To Top