html_entity_decode
html_entity_decode() является противоположностью функции htmlentities() . Она преобразует все HTML-сущности в строке string в соответствующие символы.
Список параметров
Битовая маска, состоящая из одного или более флагов, которые указывают как обращаться с кавычками и какой тип документа использовать. По умолчанию маска принимает значение ENT_COMPAT | ENT_HTML401.
Имя константы | Описание |
---|---|
ENT_COMPAT | Преобразуются двойные кавычки, одиночные остаются без изменений. |
ENT_QUOTES | Преобразуются и двойные, и одиночные кавычки. |
ENT_NOQUOTES | И двойные, и одиночные кавычки остаются без изменений. |
ENT_HTML401 | Обрабатывать код как HTML 4.01. |
ENT_XML1 | Обрабатывать код как XML 1. |
ENT_XHTML | Обрабатывать код как XHTML. |
ENT_HTML5 | Обрабатывать код как HTML 5. |
Кодировка для использования. Если не указана, то значением по умолчанию для этого аргумента является ISO-8859-1 в версиях PHP до 5.4.0 и UTF-8 начиная с PHP 5.4.0 и далее.
Поддерживаются следующие кодировки:
Кодировка | Псевдонимы | Описание |
---|---|---|
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() ), в указанном порядке. Не рекомендуется к использованию. |
Замечание: Остальные кодировки не поддерживаются, вместо них будет применена кодировка по умолчанию и сгенерировано предупреждение.
Возвращаемые значения
Возвращает раскодированную строку.
Список изменений
Версия | Описание |
---|---|
5.4.0 | Кодировка по умолчанию сменилась с ISO-8859-1 на UTF-8. |
5.4.0 | Были добавлены константы ENT_HTML401 , ENT_XML1 , ENT_XHTML и ENT_HTML5 . |
5.0.0 | Добавлена поддержка многобайтных кодировок. |
Примеры
Пример #1 Декодирование HTML-сущностей
$orig = «I’ll \»walk\» the dog now» ;
?php
echo $b ; // I’ll «walk» the dog now
?>
Примечания
Замечание:
Может показаться странным, что результатом вызова 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-кодированной строки
html_entity_decode
html_entity_decode() is the opposite of htmlentities() in that it converts HTML entities in the string to their corresponding characters.
More precisely, this function decodes all the entities (including all numeric entities) that a) are necessarily valid for the chosen document type — i.e., for XML, this function does not decode named entities that might be defined in some DTD — and b) whose character or characters are in the coded character set associated with the chosen encoding and are permitted in the chosen document type. All other entities are left as is.
Parameters
A bitmask of one or more of the following flags, which specify how to handle quotes and which document type to use. The default is ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 .
Constant Name | Description |
---|---|
ENT_COMPAT | Will convert double-quotes and leave single-quotes alone. |
ENT_QUOTES | Will convert both double and single quotes. |
ENT_NOQUOTES | Will leave both double and single quotes unconverted. |
ENT_SUBSTITUTE | Replace invalid code unit sequences with a Unicode Replacement Character U+FFFD (UTF-8) or � (otherwise) instead of returning an empty string. |
ENT_HTML401 | Handle code as HTML 4.01. |
ENT_XML1 | Handle code as XML 1. |
ENT_XHTML | Handle code as XHTML. |
ENT_HTML5 | Handle code as HTML 5. |
An optional argument defining the encoding used when converting characters.
If omitted, encoding defaults to the value of the default_charset configuration option.
Although this argument is technically optional, you are highly encouraged to specify the correct value for your code if the default_charset configuration option may be set incorrectly for the given input.
The following character sets are supported:
Charset | Aliases | Description |
---|---|---|
ISO-8859-1 | ISO8859-1 | Western European, Latin-1. |
ISO-8859-5 | ISO8859-5 | Little used cyrillic charset (Latin/Cyrillic). |
ISO-8859-15 | ISO8859-15 | Western European, Latin-9. Adds the Euro sign, French and Finnish letters missing in Latin-1 (ISO-8859-1). |
UTF-8 | ASCII compatible multi-byte 8-bit Unicode. | |
cp866 | ibm866, 866 | DOS-specific Cyrillic charset. |
cp1251 | Windows-1251, win-1251, 1251 | Windows-specific Cyrillic charset. |
cp1252 | Windows-1252, 1252 | Windows specific charset for Western European. |
KOI8-R | koi8-ru, koi8r | Russian. |
BIG5 | 950 | Traditional Chinese, mainly used in Taiwan. |
GB2312 | 936 | Simplified Chinese, national standard character set. |
BIG5-HKSCS | Big5 with Hong Kong extensions, Traditional Chinese. | |
Shift_JIS | SJIS, SJIS-win, cp932, 932 | Japanese |
EUC-JP | EUCJP, eucJP-win | Japanese |
MacRoman | Charset that was used by Mac OS. | |
» | An empty string activates detection from script encoding (Zend multibyte), default_charset and current locale (see nl_langinfo() and setlocale() ), in this order. Not recommended. |
Note: Any other character sets are not recognized. The default encoding will be used instead and a warning will be emitted.
Return Values
Returns the decoded string.
Неразрывный пробел HTML
Приветствую вас, дорогие посетители сайта Impuls-Web!
Наверняка большинство из вас сталкивалось с таким специальным символом, как неразрывный пробел HTML ( ), но, к сожалению, большинство не знает, для чего он предназначен, и как его использовать.
Навигация по статье:
Давайте разберемся с вами, что такое неразрывный пробел HTML, и как он может быть полезен нам при верстке сайтов.
Что такое неразрывный пробел HTML?
Итак, (non-breaking space) — это специальный символ, который при отображении в браузере выглядит как обычный пробел, но имеет одну, очень важную особенность. При задании символ мы получим заданное пространство между словами, которое ни в коем случае не будет разорвано при перестроении текста.
Способы использования
Свойства данного специального символа могут быть полезны нам в двух случаях:
- 1. В случае если при верстке страницы нам необходимо предусмотреть вероятность того, что при просмотре страницы сайта на мобильных устройствах текст будет перестраиваться, и мы можем получить не желательные разрывы слов или чисел. Например:
html_entity_decode
html_entity_decode () является противоположностью htmlentities () в том, что он преобразует HTML-объекты в string в соответствующие им символы.
Более точно,эта функция декодирует все сущности (включая все числовые сущности),которые a)обязательно действительны для выбранного типа документа-т.е.для XML эта функция не декодирует именованные сущности,которые могут быть определены в каком-либо DTD-и b)чей символ или символы находятся в кодированном наборе символов,связанном с выбранной кодировкой,и разрешены в выбранном типе документа.Все остальные сущности оставляются как есть.
Parameters
Битовая маска одного или нескольких из следующих флагов, которые определяют, как обрабатывать кавычки и какой тип документа использовать. По умолчанию ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 .
Constant Name | Description |
---|---|
ENT_COMPAT | Будет преобразовывать двойные кавычки и оставлять одиночные кавычки. |
ENT_QUOTES | Будет конвертировать как двойные,так и одинарные котировки. |
ENT_NOQUOTES | Оставит как двойные,так и одинарные котировки неперевернутыми. |
ENT_SUBSTITUTE | Замените недопустимые последовательности кодовых единиц на заменяющий символ Unicode U + FFFD (UTF-8) или & # xFFFD; (в противном случае) вместо возврата пустой строки. |
ENT_HTML401 | Код обработки как HTML 4.01. |
ENT_XML1 | Код обработки как XML 1. |
ENT_XHTML | Код обработки как XHTML. |
ENT_HTML5 | Код обработки как HTML 5. |
Необязательный аргумент,определяющий кодировку,используемую при преобразовании символов.
Если не указано , encoding умолчанию равна значению параметра конфигурации default_charset .
Хотя этот аргумент технически необязателен, настоятельно рекомендуется указать правильное значение для вашего кода, если параметр конфигурации default_charset может быть установлен неправильно для данного ввода.
Поддерживаются следующие наборы символов:
Charset | Aliases | Description |
---|---|---|
ISO-8859-1 | ISO8859-1 | Западноевропейский,латинский-1. |
ISO-8859-5 | ISO8859-5 | Небольшое количество использованной кириллицы (латиница/кириллица). |
ISO-8859-15 | ISO8859-15 | Западноевропейский,латинский-9.Добавляет знак евро,отсутствующие французские и финские буквы на латинице-1 (ISO-8859-1). |
UTF-8 | ASCII-совместимый многобайтовый 8-битный Юникод. | |
cp866 | ibm866, 866 | Специфическая кириллическая карта для DOS. |
cp1251 | Windows-1251, win-1251, 1251 | Оконная специфическая кириллическая диаграмма. |
cp1252 | Windows-1252, 1252 | Специфическая для Windows кодировка для Западной Европы. |
KOI8-R | koi8-ru, koi8r | Russian. |
BIG5 | 950 | Традиционный китайский,в основном используется на Тайване. |
GB2312 | 936 | Упрощенный китайский,национальный стандартный набор символов. |
BIG5-HKSCS | Большой 5 с гонконгскими пристройками,традиционный китайский. | |
Shift_JIS | SJIS, SJIS-win, cp932, 932 | Japanese |
EUC-JP | EUCJP, eucJP-win | Japanese |
MacRoman | Шарсет,который использовался в Mac OS. | |
» | Пустая строка активирует обнаружение по кодировке скрипта (многобайтовый Zend), default_charset и текущей локали (см. Nl_langinfo () и setlocale () ) в этом порядке. Не рекомендуется. |
Примечание : любые другие наборы символов не распознаются. Вместо этого будет использоваться кодировка по умолчанию, и будет выдано предупреждение.
Return Values
Возвращает декодированную строку.
Changelog
Version | Description |
---|---|
8.1.0 | flags изменены с ENT_COMPAT на ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 . |
8.0.0 | encoding теперь допускает значение NULL. |