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

# get_html_translation_table

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

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

### Описание

function 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().

> Замечание:

> Специальные символы могут быть закодированы разными способами. Например, `"` может быть закодирован как `&quot;`, `&#34;` или `&#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-1 | ISO8859-1 | Западно-Европейская кодировка с набором символов Latin-1.
  ISO-8859-5 | ISO8859-5 | Кириллическая кодировка с набором символов Latin/Cyrillic; применяют редко.
  ISO-8859-15 | ISO8859-15 | Западно-Европейская кодировка с набором символов Latin-9. Добавляет к набору символов Latin-1 кодировки ISO-8859-1 знак евро, французские и финские буквы.
  UTF-8 |  | ASCII-совместимая многобайтовая 8-битная кодировка Unicode.
  cp866 | ibm866, 866 | Кириллическая кодировка, которую применяют в семействе операционных систем DOS.
  cp1251 | Windows-1251, win-1251, 1251 | Кириллическая кодировка, которую применяют в операционных системах Windows.
  cp1252 | Windows-1252, 1252 | Западно-Европейская кодировка, которую применяют в операционных системах Windows.
  KOI8-R | koi8-ru, koi8r | Русская кодировка.
  BIG5 | 950 | Кодировка с набором символов Traditional Chinese (Традиционный китайский), которую применяют в основном на Тайване.
  GB2312 | 936 | Стандартная национальная кодировка с набором символов Simplified Chinese (Упрощённый китайский).
  BIG5-HKSCS |  | Кодировка Big5 с расширениями для Гонконга с набором символов Traditional Chinese (Традиционный китайский).
  Shift_JIS | SJIS, SJIS-win, cp932, 932 | Японская кодировка.
  EUC-JP | EUCJP, 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-сущности в символы

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open