(PHP 5 >= 5.1.0, PHP 7, PHP 8)
htmlspecialchars_decode — Convert special HTML entities back to characters
$string
, int$flags
= ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401): stringThis function is the opposite of htmlspecialchars(). It converts special HTML entities back to characters.
The converted entities are: &
, "
(when ENT_NOQUOTES
is not set), '
(when ENT_QUOTES
is set), <
and >
.
string
The string to decode.
flags
A bitmask of one or more of the following flags, which specify how to handle quotes and which document type to use. The default is ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401
.
Constant Name | Description |
---|---|
ENT_COMPAT | Will convert double-quotes and leave single-quotes alone. |
ENT_QUOTES | Will convert both double and single quotes. |
ENT_NOQUOTES | Will leave both double and single quotes unconverted. |
ENT_SUBSTITUTE | Replace invalid code unit sequences with a Unicode Replacement Character U+FFFD (UTF-8) or � (otherwise) instead of returning an empty string. |
ENT_HTML401 | Handle code as HTML 4.01. |
ENT_XML1 | Handle code as XML 1. |
ENT_XHTML | Handle code as XHTML. |
ENT_HTML5 | Handle code as HTML 5. |
Returns the decoded string.
Version | Description |
---|---|
8.1.0 | flags changed from ENT_COMPAT to ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 . |
Example #1 A htmlspecialchars_decode() example
<?php
$str = "<p>this -> "</p>\n";
echo htmlspecialchars_decode($str);
// note that here the quotes aren't converted
echo htmlspecialchars_decode($str, ENT_NOQUOTES);
?>
The above example will output:
<p>this -> "</p> <p>this -> "</p>