get_html_translation_table

(PHP 4, PHP 5, PHP 7, PHP 8)

get_html_translation_tableDevuelve la tabla de traducción de entidades utilizada por htmlspecialchars() y htmlentities()

Descripción

get_html_translation_table(int $table = HTML_SPECIALCHARS, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, string $encoding = "UTF-8"): array

get_html_translation_table() devuelve la tabla de traducción de entidades utilizada internamente por las funciones htmlspecialchars() y htmlentities().

Nota:

Los caracteres especiales pueden ser codificados de diferentes maneras. Por ejemplo, " puede ser codificado como ", " o &#x22. get_html_translation_table() devuelve únicamente la forma utilizada por htmlspecialchars() y htmlentities().

Parámetros

table

La tabla a devolver. Puede ser HTML_ENTITIES o HTML_SPECIALCHARS.

flags

Una máscara de uno o varios flag siguientes, que especifican qué comillas contendrá la tabla, así como el tipo de documento previsto para la tabla. El valor por omisión es ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.

Constantes disponibles para el flag flags
Nombre de la constante Descripción
ENT_COMPAT La tabla contiene entidades para las comillas dobles, pero no para las comillas simples.
ENT_QUOTES La tabla contiene entidades para las comillas dobles y simples.
ENT_NOQUOTES La tabla no contiene entidades para las comillas dobles ni simples.
ENT_SUBSTITUTE Reemplaza las secuencias de código no válidas con un carácter de reemplazo Unicode U+FFFD (UTF-8) o &#FFFD; (en otro caso) en lugar de devolver una string vacía.
ENT_HTML401 Tabla para HTML 4.01.
ENT_XML1 Tabla para XML 1.
ENT_XHTML Tabla para XHTML.
ENT_HTML5 Tabla para HTML 5.

encoding

Codificación a utilizar. Si se omite, el valor por omisión es UTF-8.

Están soportados los siguientes juegos de caracteres:

Juegos de caracteres soportados
Juego de caracteres Alias Descripción
ISO-8859-1 ISO8859-1 Europeo occidental, Latin-1.
ISO-8859-5 ISO8859-5 Juego de caracteres cirílicos poco usado (Latin/Cyrillic).
ISO-8859-15 ISO8859-15 Europeo occidental, Latin-9. Añade el signo de euro, y letras del francés y finlandés ausentes en Latin-1 (ISO-8859-1).
UTF-8   Unicode de 8 bit multibyte compatible con ASCII.
cp866 ibm866, 866 Juego de caracteres cirílico específico de DOS.
cp1251 Windows-1251, win-1251, 1251 Juego de caracteres cirílico específico de Windows.
cp1252 Windows-1252, 1252 Juego de caracteres específico de Windows para Europa occidental.
KOI8-R koi8-ru, koi8r Ruso.
BIG5 950 Chino tradicional, usado principalmente en Taiwán.
GB2312 936 Chino simplificado, juego de caracteres estándar nacional.
BIG5-HKSCS   Big5 con extensiones de Hong Kong, chino tradicional.
Shift_JIS SJIS, SJIS-win, cp932, 932 Japonés
EUC-JP EUCJP, eucJP-win Japonés
MacRoman   Juego de caracteres que fue utilizado por Mac OS.
''   Un string vacío activa la detección desde la codificación del script (Zend multibyte), default_charset y la actual configuración regional (véase nl_langinfo() y setlocale()), en este orden. No se recomienda.

Nota: No se reconoce cualquier otro juego de caracteres. Será utilizada en su lugar la codificación por defecto y se emitirá una advertencia.

Valores devueltos

Devuelve la tabla de traducción, en forma de array, con las claves como caracteres originales y los valores como las entidades correspondientes.

Historial de cambios

Versión Descripción
8.1.0 flags cambió de ENT_COMPAT a ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.

Ejemplos

Ejemplo #1 Ejemplo con la tabla de traducción de caracteres a entidades HTML

<?php
var_dump
(get_html_translation_table(HTML_ENTITIES, ENT_QUOTES | ENT_HTML5));
?>

El resultado del ejemplo sería algo similar a:

array(1510) {
  ["
"]=>
  string(9) "&NewLine;"
  ["!"]=>
  string(6) "&excl;"
  ["""]=>
  string(6) "&quot;"
  ["#"]=>
  string(5) "&num;"
  ["$"]=>
  string(8) "&dollar;"
  ["%"]=>
  string(8) "&percnt;"
  ["&"]=>
  string(5) "&amp;"
  ["'"]=>
  string(6) "&apos;"
  // ...
}

Ver también