2010-03-28 22:10:10 +00:00
<?xml version="1.0" encoding="utf-8"?>
2009-07-11 09:08:43 +00:00
<!-- $Revision$ -->
2020-12-05 14:30:42 +00:00
<refentry xml:id= "function.htmlspecialchars-decode" xmlns= "http://docbook.org/ns/docbook" >
2005-03-15 17:08:42 +00:00
<refnamediv >
<refname > htmlspecialchars_decode</refname>
<refpurpose >
Convert special HTML entities back to characters
</refpurpose>
</refnamediv>
<refsect1 role= "description" >
&reftitle.description;
<methodsynopsis >
<type > string</type> <methodname > htmlspecialchars_decode</methodname>
<methodparam > <type > string</type> <parameter > string</parameter> </methodparam>
2021-10-27 08:50:38 +00:00
<methodparam choice= "opt" > <type > int</type> <parameter > flags</parameter> <initializer > <constant > ENT_QUOTES</constant> | <constant > ENT_SUBSTITUTE</constant> | <constant > ENT_HTML401</constant> </initializer> </methodparam>
2005-03-15 17:08:42 +00:00
</methodsynopsis>
<para >
This function is the opposite of <function > htmlspecialchars</function> . It
converts special HTML entities back to characters.
</para>
<para >
The converted entities are: <literal > & amp;</literal> ,
2009-05-03 22:22:31 +00:00
<literal > & quot;</literal> (when <constant > ENT_NOQUOTES</constant> is not set),
<literal > & #039;</literal> (when <constant > ENT_QUOTES</constant> is set),
2005-03-15 17:08:42 +00:00
<literal > & lt;</literal> and <literal > & gt;</literal> .
</para>
</refsect1>
<refsect1 role= "parameters" >
&reftitle.parameters;
<para >
<variablelist >
<varlistentry >
<term > <parameter > string</parameter> </term>
<listitem >
<para >
2012-01-28 14:32:07 +00:00
The string to decode.
2005-03-15 17:08:42 +00:00
</para>
</listitem>
</varlistentry>
<varlistentry >
2012-01-28 14:32:07 +00:00
<term > <parameter > flags</parameter> </term>
2005-03-15 17:08:42 +00:00
<listitem >
<para >
2012-01-28 14:32:07 +00:00
A bitmask of one or more of the following flags, which specify how to handle quotes and
2021-09-23 13:00:33 +00:00
which document type to use. The default is <literal > ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401</literal> .
2005-03-15 17:08:42 +00:00
<table >
2012-01-28 14:32:07 +00:00
<title > Available <parameter > flags</parameter> constants</title>
2005-03-15 17:08:42 +00:00
<tgroup cols= "2" >
<thead >
<row >
<entry > Constant Name</entry>
<entry > Description</entry>
</row>
</thead>
<tbody >
<row >
<entry > <constant > ENT_COMPAT</constant> </entry>
2012-01-28 14:32:07 +00:00
<entry > Will convert double-quotes and leave single-quotes alone.</entry>
2005-03-15 17:08:42 +00:00
</row>
<row >
<entry > <constant > ENT_QUOTES</constant> </entry>
2012-01-28 14:32:07 +00:00
<entry > Will convert both double and single quotes.</entry>
2005-03-15 17:08:42 +00:00
</row>
<row >
<entry > <constant > ENT_NOQUOTES</constant> </entry>
2012-01-28 14:32:07 +00:00
<entry > Will leave both double and single quotes unconverted.</entry>
</row>
2021-10-27 08:50:38 +00:00
<row >
<entry > <constant > ENT_SUBSTITUTE</constant> </entry>
<entry >
Replace invalid code unit sequences with a Unicode Replacement Character
U+FFFD (UTF-8) or & #xFFFD; (otherwise) instead of returning an empty string.
</entry>
</row>
2012-01-28 14:32:07 +00:00
<row >
<entry > <constant > ENT_HTML401</constant> </entry>
<entry >
Handle code as HTML 4.01.
</entry>
</row>
<row >
<entry > <constant > ENT_XML1</constant> </entry>
<entry >
Handle code as XML 1.
</entry>
</row>
<row >
<entry > <constant > ENT_XHTML</constant> </entry>
<entry >
Handle code as XHTML.
</entry>
</row>
<row >
<entry > <constant > ENT_HTML5</constant> </entry>
<entry >
Handle code as HTML 5.
</entry>
2005-03-15 17:08:42 +00:00
</row>
</tbody>
</tgroup>
</table>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role= "returnvalues" >
&reftitle.returnvalues;
<para >
Returns the decoded string.
</para>
</refsect1>
2021-09-23 13:00:33 +00:00
<refsect1 role= "changelog" >
&reftitle.changelog;
<informaltable >
<tgroup cols= "2" >
<thead >
<row >
<entry > &Version; </entry>
<entry > &Description; </entry>
</row>
</thead>
<tbody >
<row >
<entry > 8.1.0</entry>
<entry >
2021-10-27 08:50:38 +00:00
<parameter > flags</parameter> changed from <constant > ENT_COMPAT</constant> to <constant > ENT_QUOTES</constant> | <constant > ENT_SUBSTITUTE</constant> | <constant > ENT_HTML401</constant> .
2021-09-23 13:00:33 +00:00
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
2005-03-15 17:08:42 +00:00
<refsect1 role= "examples" >
&reftitle.examples;
<para >
<example >
<title > A <function > htmlspecialchars_decode</function> example</title>
<programlisting role= "php" >
< ![CDATA[
< ?php
2012-02-16 23:50:19 +00:00
$str = "<p > this -> " </p> \n";
2005-03-15 17:08:42 +00:00
echo htmlspecialchars_decode($str);
// note that here the quotes aren't converted
echo htmlspecialchars_decode($str, ENT_NOQUOTES);
?>
]]>
</programlisting>
&example.outputs;
<screen >
< ![CDATA[
<p > this -> "</p>
<p > this -> " </p>
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role= "seealso" >
&reftitle.seealso;
<para >
<simplelist >
<member > <function > htmlspecialchars</function> </member>
<member > <function > html_entity_decode</function> </member>
<member > <function > get_html_translation_table</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
2009-09-25 07:04:39 +00:00
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
2005-03-15 17:08:42 +00:00
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
-->