PHP htmlentities() Function

P
PHP get_html_translation_table() Function
PHP html_entity_decode() Function

In this article, you will learn how to convert plain characters into HTML entities. The htmlentities() function convert characters into HTML entities.

Note: To perform the reverse operation (HTML entities back to characters), you can use html_entity_decode() function.

htmlentities() function uses translation table. To get the translation table, you can use get_html_tranlsation_table() function.

What is the syntax of the htmlentities() function in php?

htmlentities(string,flags,character-set,double_encode)
ParameterDescription
stringThe string to convert to HTML elements – Required
flagsOptional. Specifies how to handle quotes, invalid encoding and the used document type.The available quote styles are:ENT_COMPAT – Default. Encodes only double quotesENT_QUOTES – Encodes double and single quotesENT_NOQUOTES – Does not encode any quotesInvalid encoding:ENT_IGNORE – Ignores invalid encoding instead of having the function return an empty string. Should be avoided, as it may have security implications.ENT_SUBSTITUTE – Replaces invalid encoding for a specified character set with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD; instead of returning an empty string.ENT_DISALLOWED – Replaces code points that are invalid in the specified doctype with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD;Additional flags for specifying the used doctype:ENT_HTML401 – Default. Handle code as HTML 4.01ENT_HTML5 – Handle code as HTML 5ENT_XML1 – Handle code as XML 1ENT_XHTML – Handle code as XHTML
character-setOptional. A string that specifies which character-set to use.Allowed values are:UTF-8 – Default. ASCII compatible multi-byte 8-bit UnicodeISO-8859-1 – Western EuropeanISO-8859-15 – Western European (adds the Euro sign + French and Finnish letters missing in ISO-8859-1)cp866 – DOS-specific Cyrillic charsetcp1251 – Windows-specific Cyrillic charsetcp1252 – Windows specific charset for Western EuropeanKOI8-R – RussianBIG5 – Traditional Chinese, mainly used in TaiwanGB2312 – Simplified Chinese, national standard character setBIG5-HKSCS – Big5 with Hong Kong extensionsShift_JIS – JapaneseEUC-JP – JapaneseMacRoman – Character-set that was used by Mac OSNote: Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8.
double_encodeOptional. A boolean value that specifies whether to encode existing html entities or not.TRUE – Default. Will convert everythingFALSE – Will not encode existing html entities
PHP htmlentities() method

exaples of the htmlentities function

Example 1. In this example, we initialize a string with some HTML entity and then pass it to the htmlentities() method to convert them into HTML elements.

<?php
$string = '<a href="https://www.php.org">Go to php.org</a>';
echo htmlentities($str);
?>

Example 2. In this example, we declare some strings and tried converting them to HTML elements by using different constants/flags. Run the following example to check the difference between outputs.

<?php
$str = "Some scientist said: 'E=MC²'";
echo htmlentities($str, ENT_COMPAT); // It will convert only double quotes
echo "<br>";
echo htmlentities($str, ENT_QUOTES); // It will convert both single and double quotes
echo "<br>";
echo htmlentities($str, ENT_NOQUOTES); // It will not convert the quotes
?>

Example 3. This is another example of characters to HTML entities converter using Western European character set. It convert double quotes (not single quotes) and uses the character-set Western European

<?php
$str = "I am Øyvind Åsane. I'm Pakistani.";
echo htmlentities($str, ENT_QUOTES, "UTF-8"); 
?>
PHP get_html_translation_table() Function
PHP html_entity_decode() Function

Add comment

Tutor Network

Share this

Learn PHP from A to Z