html_entity_decode
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
html_entity_decode — Перетворює HTML-сутності на символи
Опис
html_entity_decode(string $string, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, ?string $encoding = null): string
Функцияhtml_entity_decode() протилежна функції htmlentities(). Вона перетворює HTML-сутності у рядку string символи.
Точніше, ця функція перетворює всі сутності (включаючи числові), які, по-перше, точно допустимі для типу документа — тобто, для XML ця функція не перетворює іменовані сутності, які визначені в DTD, а по-друге, символ чи символи яких містяться в кодуванні, що відповідає вибраному, та дозволені у типі документа. Усі інші сутності не змінюються.
Список параметрів
string
Вхідний рядок.
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
Необов'язковий аргумент, що визначає кодування, яке використовується при конвертації символів.
Если не указан, то значение по умолчанию дляencoding залежить від конфігураційної опції default_charset
Хоча цей аргумент є технічно необов'язковим, рекомендується вказати правильне значення для вашого коду, опція конфігурації default_charset може бути задана неправильно для вхідних даних.
Підтримуються такі кодування:
Підтримувані кодування
| Кодировка | Псевдонимы | Опис |
|---|---|---|
| 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 | 8-бітна Unicode, сумісна з ASCII. | |
| cp866 | ibm866, 866 | Кирилічна кодування, що застосовується в DOS. |
| cp1251 | Windows-1251, win-1251, 1251 | Кирилічна кодування, що використовується у Windows. |
| cp1252 | Windows-1252, 1252 | Західно-європейське кодування, що використовується у Windows. |
| KOI8-R | koi8-ru, koi8r | Російське кодування. |
| BIG5 | 950 | Традиційний китайський, застосовується переважно на Тайвані. |
| GB2312 | 936 | Спрощена китайська, стандартне національне кодування. |
| BIG5-HKSCS | Розширена Big5, що застосовується в Гонконгу. | |
| 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 |
| 8.0.0 | Параметрencoding тепер може набувати значення null. |
Приклади
Приклад #1 Декодування HTML-сутностей
Loading...
Примітки
Зауваження :
Може здатися дивним, що результат виклику функції trim(html_entity_decode(' ')); - Не порожній рядок. Причина в тому, що елемент ' ' перетворюється на символ з ASCII-кодом 32 (який видаляється функцією trim()), а символ з ASCII-кодом 160 (0xa0) в кодуванні ISO-8859-1, що приймається за умовчанням.
Дивіться також
- htmlentities() - Перетворює всі можливі символи у відповідні HTML-сутності
- htmlspecialchars() - Перетворює спеціальні символи в HTML-сутності
- get_html_translation_table() - Повертає таблицю перетворень, використовувану функціями htmlspecialchars і htmlentities
- urldecode() - Декодування URL-кодованого рядка