PHP : html_entity_decode() function


The html_entity_decode() function is used to convert all HTML entities to their applicable characters.


(PHP 4 and above)


html_entity_decode(input_string, quote_style, charset )
Name Description Required /
input_string The string to be converted. Required String
quote_style Encoding single and double quote.
ENT_COMPAT : Convert double quotes and leave single quotes unchanged.
ENT_COMPAT is the default setting
ENT_QUOTES : Converts both single and double quotes.
ENT_NOQUOTES: Converts neither single nor double quotes.
Optional Integer
charset Refers the character set to be used.
List of character set.
ISO-8859-1 : Western European, Latin-1 [default character set].
ISO-8859-15 : Western European, Latin-9. UTF-8 : ASCII compatible multi-byte 8-bit Unicode.
cp866 : DOS-specific Cyrillic charset.
cp1251 : Windows-specific Cyrillic charset.
cp1252 : Windows-specific charset for Western European.
KOI8-R : Russian.
BIG5 : Traditional Chinese.
GB2312 : Simplified Chinese.
BIG5-HKSCS : Big5 with Hong Kong extensions.
Shift_JIS : Japanese.
EUC-JP : Japanese.
Optional String

Return values:

The decoded string.

Value Type: String.

Pictorial Presentation

php html_entity_decode function


$string = "You are learning <b>PHP</b> at <a href='index.php'>w3resource.com</a>";
$p1 = htmlentities($string);
$p2 = html_entity_decode($p1);
echo $p1.'<br/>'; 
echo $p2; 


You are learning <b>PHP</b> at <a   href='index.php'>w3resource.com</a>
You are learning PHP at w3resource.com

View the example in the browser

See also

PHP Function Reference

Previous: hebrev
Next: htmlentities

PHP: Tips of the Day

In PHP, there are two versions of logical AND and OR operators.

Operator True if
$a and $b Both $a and $b are true
$a && $b Both $a and $b are true
$a or $b Either $a or $b is true
$a || $b Either $a or $b is true

Note that the && and || opererators have higher precedence than and and or. See table below:

Evaluation Result of $e Evaluated as
$e = false || true True $e = (false || true)
$e = false or true False ($e = false) or true

Because of this it's safer to use && and || instead of and and or.