get_html_translation_table

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

get_html_translation_tableВозвращает таблицу преобразований, используемую функциями htmlspecialchars() и htmlentities()

Описание

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() возвращает таблицу преобразований, используемую функциями htmlspecialchars() и htmlentities().

Замечание:

Специальные символы могут быть закодированы разными способами. Например, " может быть закодирован как ", " или &#x22. get_html_translation_table() возвращает только формы, используемые функциями htmlspecialchars() и htmlentities().

Список параметров

table

Указывает, какую таблицу использовать для преобразований. Либо HTML_ENTITIES, либо HTML_SPECIALCHARS.

flags

Битовая маска, состоящая из одного или нескольких перечисленных ниже флагов, которые указывают, какие кавычки будет содержать таблица, а также для какого документа таблица предназначена. Значение по умолчанию ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.

Доступные константы в параметре flags
Имя константыОписание
ENT_COMPATТаблица будет содержать сущности для двойных кавычек, но не будет для одинарных.
ENT_QUOTESТаблица будет содержать сущности как для двойных кавычек, так и для одинарных.
ENT_NOQUOTESТаблица не будет содержать сущности ни для двойных кавычек, ни для одинарных.
ENT_SUBSTITUTE Заменяет некорректные кодовые последовательности символом замены Юникода U+FFFD в случае использования UTF-8 и &#FFFD; при использовании другой кодировки, вместо возврата пустой строки.
ENT_HTML401Таблица для HTML 4.01.
ENT_XML1Таблица для XML 1.
ENT_XHTMLТаблица для XHTML.
ENT_HTML5Таблица для HTML 5.
encoding

Используемая кодировка. Если не указана, то значением по умолчанию для этого аргумента является UTF-8.

Функция поддерживает следующие кодировки:

Кодировки, которые поддерживает функция
КодировкаПсевдонимыОписание
ISO-8859-1ISO8859-1 Западно-Европейская кодировка с набором символов Latin-1.
ISO-8859-5ISO8859-5 Кириллическая кодировка с набором символов Latin/Cyrillic; применяют редко.
ISO-8859-15ISO8859-15 Западно-Европейская кодировка с набором символов Latin-9. Добавляет к набору символов Latin-1 кодировки ISO-8859-1 знак евро, французские и финские буквы.
UTF-8  ASCII-совместимая многобайтовая 8-битная кодировка Unicode.
cp866ibm866, 866 Кириллическая кодировка, которую применяют в семействе операционных систем DOS.
cp1251Windows-1251, win-1251, 1251 Кириллическая кодировка, которую применяют в операционных системах Windows.
cp1252Windows-1252, 1252 Западно-Европейская кодировка, которую применяют в операционных системах Windows.
KOI8-Rkoi8-ru, koi8r Русская кодировка.
BIG5950 Кодировка с набором символов Traditional Chinese (Традиционный китайский), которую применяют в основном на Тайване.
GB2312936 Стандартная национальная кодировка с набором символов Simplified Chinese (Упрощённый китайский).
BIG5-HKSCS  Кодировка Big5 с расширениями для Гонконга с набором символов Traditional Chinese (Традиционный китайский).
Shift_JISSJIS, SJIS-win, cp932, 932 Японская кодировка.
EUC-JPEUCJP, eucJP-win Японская кодировка.
MacRoman  Кодировка, которую использовала операционная система Mac OS.
''  Пустая строка активирует режим определения кодировки из файла скрипта (Zend multibyte), директивы default_charset и текущей локали (смотрите описание функций nl_langinfo() и setlocale()), в перечисленном порядке. Не рекомендуется использовать.

Замечание: Другие кодировки функция не распознаёт. Вместо других кодировок функция будет использовать кодировку по умолчанию и выдаст предупреждение.

Возвращаемые значения

Возвращает таблицу преобразований в виде массива с оригинальными символами в качестве ключей и сущностями в качестве значений.

Список изменений

ВерсияОписание
8.1.0 Значение по умолчанию параметра flags изменено с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401.

Примеры

Пример #1 Пример таблицы преобразований

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

Вывод приведённого примера будет похож на:

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;"}

Смотрите также

  • htmlspecialchars() - Преобразовывает специальные символы в HTML-сущности
  • htmlentities() - Преобразовывает возможные символы в HTML-сущности
  • html_entity_decode() - Преобразовывает HTML-сущности в символы
To Top