htmlentities
(PHP 4, PHP 5)
htmlentities — Convertit tous les caractères éligibles en entités HTML
Description
htmlentities est identique à la fonction htmlspecialchars(), sauf que tous les caractères qui ont des équivalents en entités HTML sont effectivement traduits.
Comme htmlspecialchars(), cette fonction prend un deuxième argument optionnel, qui indique comment doivent être traités les guillemets doubles et simples. Vous pouvez utiliser l'une des constantes suivantes la valeur par défaut étant ENT_COMPAT :
Nom | Description |
---|---|
ENT_COMPAT | Convertit les guillemets doubles, et ignore les guillemets simples |
ENT_QUOTES | Convertit les guillemets doubles et les guillemets simples |
ENT_NOQUOTES | Ignore les guillemets doubles et les guillemets simples |
Comme htmlspecialchars(), cette fonction prend un troisième argument optionnel qui définit le jeu de caractères utilisé durant la conversion. Actuellement, le jeu de caractères ISO-8859-1 est utilisé par défaut.
Les jeux de caractères suivants sont disponibles et supportés par PHP 4.3.0 et plus récent.
Jeux de caractères | Alias | Description |
---|---|---|
ISO-8859-1 | ISO8859-1 | Europe occidentale, Latin-1 |
ISO-8859-15 | ISO8859-15 | Europe occidentale, Latin-9. Dispose du signe Euro, des caractères spéciaux français et finlandais, qui manquent au Latin-1(ISO-8859-1). |
UTF-8 | Unicode 8 bits multi octets, compatible avec l'ASCII | |
cp866 | ibm866, 866 | Jeu de caractères Cyrillic spécifique à DOS. Ce jeu de caractères est supporté depuis PHP 4.3.2. |
cp1251 | Windows-1251, win-1251, 1251 | Jeu de caractères Cyrillic spécifique à Windows. Ce jeu de caractères est supporté depuis PHP 4.3.2. |
cp1252 | Windows-1252, 1252 | Jeu de caractères spécifique de Windows pour l'Europe occidentale. |
KOI8-R | koi8-ru, koi8r | Russe. Ce jeu de caractères est supporté depuis PHP 4.3.2. |
BIG5 | 950 | Chinois traditionnel, principalement utilisé à Taiwan. |
GB2312 | 936 | Chinois simplifié, officiel. |
BIG5-HKSCS | Big5 avec les extensions de Hong Kong, chinois traditionnel. | |
Shift_JIS | SJIS, 932 | Japonais |
EUC-JP | EUCJP | Japonais |
Note: Les autres jeux de caractères ne sont pas reconnus, et le ISO-8859-1 sera utilisé à la place.
Lorsque double_encode est désactivé, PHP n'encodera pas les entités html existantes. Par défaut, tout est convertie.
Le paramètre double_quote a été ajouté en PHP 5.2.3, le paramètre charset en 4.1.0 et le paramètre quote en PHP 4.0.3.
Si vous voulez réaliser l'opération inverse, vous devez utiliser la fonction html_entity_decode().
Example#1 Exemple avec htmlentities()
<?php
$str = 'Un \'apostrophe\' en <strong>gras</strong>';
// Affiche : Un 'apostrophe' en <strong>gras</strong>
echo htmlentities($str);
// Affiche : Un 'apostrophe' en <strong>gras</strong>
echo htmlentities($str, ENT_QUOTES);
?>
Voir aussi html_entity_decode(), get_html_translation_table(), htmlspecialchars(), nl2br() et urlencode().