(PHP 4, PHP 5, PHP 7)
get_html_translation_table — Retourne la table de traduction des entités utilisée par htmlspecialchars() et htmlentities()
$table = HTML_SPECIALCHARS
[, int $flags = ENT_COMPAT | ENT_HTML401
[, string $encoding = "UTF-8"
]]] ) : arrayget_html_translation_table() retourne la table de traduction des entités utilisée en interne par les fonctions htmlspecialchars() et htmlentities().
Note:
Les caractères spéciaux peuvent être encodés de différentes façon. E.g. " peut être encodé comme ", " ou ". get_html_translation_table() retourne uniquement la forme utilisée par htmlspecialchars() et htmlentities().
table
La table à retourner. Soit HTML_ENTITIES, soit
HTML_SPECIALCHARS.
flagsUn masque d'un ou plusieurs drapeaux suivants, qui spécifient quel guillemet la table contiendra, tout comme le type de document prévu pour la table. La valeur par défaut est ENT_COMPAT | ENT_HTML401.
| Nom de la constante | Description |
|---|---|
ENT_COMPAT |
La table contient des entités pour les guillemets doubles, mais pas pour les guillemets simples. |
ENT_QUOTES |
La table contient des entités pour à la fois les guillemets doubles et simples. |
ENT_NOQUOTES |
La table ne contient pas d'entités pour à la fois les guillemets doubles et simples. |
ENT_HTML401 |
Table pour du HTML 4.01. |
ENT_XML1 |
Table pour du XML 1. |
ENT_XHTML |
Table pour du XHTML. |
ENT_HTML5 |
Table pour du HTML 5. |
encodingEncodage à utiliser. Si omis, la valeur par défaut de cet argument sera ISO-8859-1 pour les versions antérieures à la version 5.4.0 de PHP, et UTF-8 pour les versions suivantes à 5.4.0.
Les jeux de caractères suivants sont supportés :
| Jeux de caractères | Alias | Description |
|---|---|---|
| ISO-8859-1 | ISO8859-1 | Europe occidentale, Latin-1. |
| ISO-8859-5 | ISO8859-5 | Jeu de caractère cyrillique rarement utilisé (Latin/Cyrillic). |
| 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 multioctets, compatible avec l'ASCII | |
| cp866 | ibm866, 866 | Jeu de caractères Cyrillique spécifique à DOS. |
| cp1251 | Windows-1251, win-1251, 1251 | Jeu de caractères Cyrillic spécifique à Windows. |
| cp1252 | Windows-1252, 1252 | Jeu de caractères spécifique de Windows pour l'Europe occidentale. |
| KOI8-R | koi8-ru, koi8r | Russe. |
| BIG5 | 950 | Chinois traditionnel, principalement utilisé à Taïwan. |
| GB2312 | 936 | Chinois simplifié, officiel. |
| BIG5-HKSCS | Big5 avec les extensions de Hong Kong, chinois traditionnel. | |
| Shift_JIS | SJIS, SJIS-win, cp932, 932 | Japonais |
| EUC-JP | EUCJP, eucJP-win | Japonais |
| MacRoman | Jeu de caractères utilisé par Mac OS. | |
| '' | Une chaîne vide active la détection de l'encodage depuis un script (multi-octet Zend), default_charset et la locale courante (voir nl_langinfo() et setlocale()), dans cet ordre. Non recommandé. |
Note: Les autres jeux de caractères ne sont pas reconnus. L'encodage par défaut sera utilisé à la place et une alerte sera émise.
Retourne la table de traduction, sous la forme d'un tableau, avec comme clés, les caractères orignaux, et comme valeurs, les entités correspondantes.
| Version | Description |
|---|---|
| 5.4.0 |
La valeur par défaut du paramètre encoding
a changé en UTF-8.
|
| 5.4.0 |
Les constantes ENT_HTML401, ENT_XML1,
ENT_XHTML et ENT_HTML5 ont été
ajoutées.
|
| 5.3.4 |
Le paramètre encoding a été ajouté.
|
Exemple #1 Exemple avec la table de traduction des caractères en entités HTML
<?php
var_dump(get_html_translation_table(HTML_ENTITIES, ENT_QUOTES | ENT_HTML5));
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
array(1510) {
["
"]=>
string(9) "
"
["!"]=>
string(6) "!"
["""]=>
string(6) """
["#"]=>
string(5) "#"
["$"]=>
string(8) "$"
["%"]=>
string(8) "%"
["&"]=>
string(5) "&"
["'"]=>
string(6) "'"
// ...
}