htmlentities

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

htmlentities — Перетворює всі можливі символи у відповідні HTML-сутності

Опис

htmlentities(    string $string,    int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401,    ?string $encoding = null,    bool $double_encode = true): string

Ця функція ідентична функції htmlspecialchars() за винятком того, що функція htmlentities() перетворює всі символи у відповідні HTML-сутності (для тих символів, котрим HTML-сутності існують). Функція get_html_translation_table() може бути використана для повернення використовуваної таблиці перекладу залежно від наданих констант у параметрі flags

Якщо потрібно розкодувати рядок (навпаки), використовуйте функцію html_entity_decode()

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

string

Вхідний рядок.

flags

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

Доступні значення параметра flags

Название константыОпис
ENT_COMPATПеретворює подвійні лапки, одинарні лапки не змінюються.
ENT_QUOTESПеретворює як подвійні, і одинарні лапки.
ENT_NOQUOTESЗалишає без зміни як подвійні, так і одинарні лапки.
ENT_IGNOREМовчки відкидає некоректні кодові послідовності замість повернення порожнього рядка. Використання цього прапора не рекомендується, оскільки це » може внести вразливості у ваш код
ENT_SUBSTITUTEЗамінює некоректні кодові послідовності символом заміни Юнікоду U+FFFD у разі використання UTF-8 та &#FFFD; при використанні іншого кодування замість повернення порожнього рядка.
ENT_DISALLOWEDЗамінює неправильні коди символів для заданого типу документа символом заміни юнікоду U+FFFD (UTF-8) або &#FFFD; (при використанні іншого кодування) замість того, щоб залишати все як є. Це може бути корисним, наприклад, для того, щоб переконатися у формальній правильності XML-документів із вбудованим зовнішнім контентом.
ENT_HTML401Обробка коду відповідно до HTML 4.01.
ENT_XML1Обробка коду відповідно до XML 1.
ENT_XHTMLОбробка коду відповідно до XHTML.
ENT_HTML5Обробка коду відповідно до HTML 5.

encoding

Необов'язковий аргумент, що визначає кодування, яке використовується при конвертації символів.

Если не указан, то значение по умолчанию дляencoding залежить від конфігураційної опції default_charset

Хоча цей аргумент є технічно необов'язковим, рекомендується вказати правильне значення для вашого коду, опція конфігурації default_charset може бути задана неправильно для вхідних даних.

Підтримуються такі кодування:

Підтримувані кодування

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

Зауваження: Інші кодування не підтримуються, замість них буде застосовано кодування за замовчуванням та згенеровано попередження.

double_encode

При вимкненні параметра double_encode, PHP не перетворюватиме існуючі html-сутності. За промовчанням перетворює все без обмежень.

Значення, що повертаються

Повертає перетворений рядок.

За наявності у вхідному параметрі string неприпустимої послідовності символів у заданому кодуванні encoding, буде повернено порожній рядок, якщо не встановлено прапори ENT_IGNORE або ENT_SUBSTITUTE

список змін

ВерсияОпис
8.1.0Значення за промовчанням flags змінено з ENT_COMPATнаENT_QUOTES
8.0.0encoding тепер допускає значення null.

Приклади

Приклад #1 Приклад використання htmlentities()****

Loading...

Приклад #2 ИспользованиеENT_IGNORE****

Loading...

Дивіться також

  • html_entity_decode() - Перетворює HTML-сутності на символи
  • get_html_translation_table() - Повертає таблицю перетворень, використовувану функціями htmlspecialchars і htmlentities
  • htmlspecialchars() - Перетворює спеціальні символи в HTML-сутності
  • nl2br() - Вставляє HTML код розриву рядка перед кожним перекладом рядка
  • urlencode() - URL-кодування рядка