(PHP 3, PHP 4 , PHP 5)

htmlentities --  Convert all applicable characters to HTML entities


string htmlentities ( string string [, int quote_style [, string charset]])

This function is identical to htmlspecialchars() in all ways, except with htmlentities(), all characters which have HTML character entity equivalents are translated into these entities.

Like htmlspecialchars(), the optional second quote_style parameter lets you define what will be done with 'single' and "double" quotes. It takes on one of three constants with the default being ENT_COMPAT:

Tabella 1. Available quote_style constants

Constant NameDescription
ENT_COMPATWill convert double-quotes and leave single-quotes alone.
ENT_QUOTESWill convert both double and single quotes.
ENT_NOQUOTESWill leave both double and single quotes unconverted.

Support for the optional quote parameter was added in PHP 4.0.3.

Like htmlspecialchars(), it takes an optional third argument charset which defines character set used in conversion. Support for this argument was added in PHP 4.1.0. Presently, the ISO-8859-1 character set is used as the default.

Elenco dei set di caratteri supportati dal PHP 4.3.0 e successivi.

Tabella 2. set di caratteri supportati

Set di caratteriAliasDescrizione
ISO-8859-1ISO8859-1 Western European, Latin-1
ISO-8859-15ISO8859-15 Western European, Latin-9. Con in più il simbolo dell'Euro e i caratteri francesi e finnici mancanti in Latin-1(ISO-8859-1).
UTF-8  Set ASCII compatibile con il set multi-byte Unicode su 8-bit.
cp866ibm866, 866 Set di caratteri cirillico specifico del Dos. Supportato dalla 4.3.2.
cp1251Windows-1251, win-1251, 1251 Set di caratteri cirillico specifico di Windows, Supportato dalla 4.3.2.
cp1252Windows-1252, 1252 Set di caratteri specifico di Windows per l'Europa occidentale.
KOI8-Rkoi8-ru, koi8r Russo. Supportato dalla 4.3.2.
BIG5950 Cinese tradizionale, usato principalmente a Taiwan.
GB2312936 Cinese semplificato, set di caratteri nazionale standard.
BIG5-HKSCS  Big5 con estensioni per Hong Kong, cinese tradizionale.
Shift_JISSJIS, 932 Giapponese.
EUC-JPEUCJP Giapponese.

Nota: Ogni altro set di caratteri non è riconosciuto e sarà sostituito con con il set ISO-8859-1.

If you're wanting to decode instead (the reverse) you can use html_entity_decode().

Esempio 1. A htmlentities() example

= "A 'quote' is <b>bold</b>";

// Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str);

// Outputs: A &#039;quote&#039; is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str, ENT_QUOTES);

See also html_entity_decode(), get_html_translation_table(), htmlspecialchars(), nl2br(), and urlencode().