php-doc-en/reference/strings/functions/get-html-translation-table.xml
Jakub Vrana 4effeb4d1f HTML functions use encoding, not character set
E.g. ISO-8859-1 is both character set and encoding but UTF-8 is encoding of Unicode character set.

See also http://bugs.php.net/61116

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@323270 c90b9560-bf6c-de11-be94-00142212c4b1
2012-02-16 23:55:01 +00:00

235 lines
6.5 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!-- $Revision$ -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.get-html-translation-table">
<refnamediv>
<refname>get_html_translation_table</refname>
<refpurpose>Returns the translation table used by <function>htmlspecialchars</function> and <function>htmlentities</function></refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>get_html_translation_table</methodname>
<methodparam choice="opt"><type>int</type><parameter>table</parameter><initializer>HTML_SPECIALCHARS</initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>ENT_COMPAT | ENT_HTML401</initializer></methodparam>
<methodparam choice="opt"><type>string</type><parameter>encoding</parameter><initializer>'UTF-8'</initializer></methodparam>
</methodsynopsis>
<para>
<function>get_html_translation_table</function> will return the
translation table that is used internally for
<function>htmlspecialchars</function> and
<function>htmlentities</function>.
</para>
<note>
<para>
Special characters can be encoded in several ways. E.g.
<literal>"</literal> can be encoded as <literal>&amp;quot;</literal>,
<literal>&amp;#34;</literal> or <literal>&amp;#x22</literal>.
<function>get_html_translation_table</function> returns only the form used
by <function>htmlspecialchars</function> and
<function>htmlentities</function>.
</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>table</parameter></term>
<listitem>
<para>
Which table to return. Either <constant>HTML_ENTITIES</constant> or
<constant>HTML_SPECIALCHARS</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
A bitmask of one or more of the following flags, which specify which quotes the
table will contain as well as which document type the table is for. The default is
<literal>ENT_COMPAT | ENT_HTML401</literal>.
<table>
<title>Available <parameter>flags</parameter> constants</title>
<tgroup cols="2">
<thead>
<row>
<entry>Constant Name</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><constant>ENT_COMPAT</constant></entry>
<entry>Table will contain entities for double-quotes, but not for single-quotes.</entry>
</row>
<row>
<entry><constant>ENT_QUOTES</constant></entry>
<entry>Table will contain entities for both double and single quotes.</entry>
</row>
<row>
<entry><constant>ENT_NOQUOTES</constant></entry>
<entry>Table will neither contain entities for single quotes nor for double quotes.</entry>
</row>
<row>
<entry><constant>ENT_HTML401</constant></entry>
<entry>Table for HTML 4.01.</entry>
</row>
<row>
<entry><constant>ENT_XML1</constant></entry>
<entry>Table for XML 1.</entry>
</row>
<row>
<entry><constant>ENT_XHTML</constant></entry>
<entry>Table for XHTML.</entry>
</row>
<row>
<entry><constant>ENT_HTML5</constant></entry>
<entry>Table for HTML 5.</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>encoding</parameter></term>
<listitem>
<para>
Encoding to use.
If omitted, the default value for this argument is ISO-8859-1 in
versions of PHP prior to 5.4.0, and UTF-8 from PHP 5.4.0 onwards.
</para>
&reference.strings.charsets;
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the translation table as an array, with the original characters
as keys and entities as values.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>5.4.0</entry>
<entry>
The default value for the <parameter>encoding</parameter> parameter was
changed to UTF-8.
</entry>
</row>
<row>
<entry>5.4.0</entry>
<entry>
The constants <constant>ENT_HTML401</constant>, <constant>ENT_XML1</constant>,
<constant>ENT_XHTML</constant> and <constant>ENT_HTML5</constant> were added.
</entry>
</row>
<row>
<entry>5.3.4</entry>
<entry>
The <parameter>encoding</parameter> parameter was added.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Translation Table Example</title>
<programlisting role="php">
<![CDATA[
<?php
var_dump(get_html_translation_table(HTML_ENTITIES, ENT_QUOTES | ENT_HTML5));
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
array(1510) {
[" "]=>
string(5) "&Tab;"
["
"]=>
string(9) "&NewLine;"
["!"]=>
string(6) "&excl;"
["""]=>
string(6) "&quot;"
["#"]=>
string(5) "&num;"
["$"]=>
string(8) "&dollar;"
["%"]=>
string(8) "&percnt;"
["&"]=>
string(5) "&amp;"
["'"]=>
string(6) "&apos;"
// ...
}
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>htmlspecialchars</function></member>
<member><function>htmlentities</function></member>
<member><function>html_entity_decode</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->