(PHP 4, PHP 5, PHP 7, PHP 8)
get_html_translation_table — Возвращает таблицу преобразований, используемую функциями htmlspecialchars() и htmlentities()
$table
= HTML_SPECIALCHARS
, int$flags
= ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, string$encoding
= "UTF-8"): arrayget_html_translation_table() возвращает таблицу преобразований, используемую функциями htmlspecialchars() и htmlentities().
Замечание:
Специальные символы могут быть закодированы разными способами. Например,
"
может быть закодирован как"
,"
или"
. get_html_translation_table() возвращает только формы, используемые функциями htmlspecialchars() и htmlentities().
table
Указывает, какую таблицу использовать для преобразований. Либо HTML_ENTITIES
, либо HTML_SPECIALCHARS
.
flags
Битовая маска, состоящая из одного или нескольких перечисленных ниже флагов, которые указывают, какие кавычки будет содержать таблица, а также для какого документа таблица предназначена. Значение по умолчанию ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401
.
Имя константы | Описание |
---|---|
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) "
" ["!"]=> string(6) "!" ["""]=> string(6) """ ["#"]=> string(5) "#" ["$"]=> string(8) "$" ["%"]=> string(8) "%" ["&"]=> string(5) "&" ["'"]=> string(6) "'"}