PHP Velho Oeste 2024

XMLWriter::text

xmlwriter_text

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

XMLWriter::text -- xmlwriter_textWrite text

说明

面向对象风格

XMLWriter::text ( string $content ) : bool

过程化风格

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

Writes a text.

参数

xmlwriter

仅用于过程调用。被修改的 XMLWriter resource。此资源来自于对 xmlwriter_open_uri()xmlwriter_open_memory() 的调用。

content

The contents of the text. The characters <, >, & and " are written as entity references (i.e. &lt;, &gt;, &amp; and &quot;, respectively). All other characters including ' are written literally. To write the special XML characters literally, or to write literal entity references, xmlwriter_write_raw() has to be used.

返回值

成功时返回 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