Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
html_entity_decode
(PHP 4 >= 4.3.0, PHP 5)
html_entity_decode - Преобразует HTML сущности в соответствующие символыОписание
string html_entity_decode ( string string [, int quote_style [, string charset]] )html_entity_decode(), в противоположность функции htmlentities(), преобразует HTML сущности в строке string в соответствующие символы.
Необязательный аргумент quote_style позволяет указать способ обработки 'одиночных' и "двойных" кавычек. Значением этого аргумента может быть одна из трех следующих констант (по умолчанию ENT_COMPAT):
- Константы quote_style:
- ENT_COMPAT Преобразуются двойные кавычки, одиночные остаются без изменений
- ENT_QUOTES Преобразуются и двойные, и одиночные кавычки
- ENT_NOQUOTES И двойные, и одиночные кавычки остаются без изменений
Необязательный третий аргумент charset определяет кодировку, используемую при преобразовании. По умолчанию используется кодировка ISO-8859-1.
- Начиная с PHP 4.3.0 поддерживаются следующие кодировки:
- ISO-8859-1, ISO8859-1 Западно-европейская Latin-1 ISO-8859-15ISO8859-15 Западно-европейская Latin-9. Добавляет знак евро, французские и финские буквы к кодировке Latin-1(ISO-8859-1).
- UTF-8, 8-битная Unicode, совместимая с ASCII.
- cp866, ibm866, 866 Кириллическая кодировка, применяемая в DOS. Поддерживается в версии 4.3.2.
- cp1251, Windows-1251, win-1251, 1251 Кириллическая кодировка, применяемая в Windows. Поддерживается в версии 4.3.2.
- cp1252, Windows-1252, 1252 Западно-европейская кодировка, применяемая в Windows.
- KOI8-R, koi8-ru, koi8r Русская кодировка. Поддерживается в версии 4.3.2.
- BIG5950 Традиционный китайский, применяется в основном на Тайване.
- GB2312936 Упрощенный китайский, стандартная национальная кодировка.
- BIG5-HKSCS Расширенная Big5, применяемая в Гонг-Конге.
- Shift_JISSJIS, 932 Японская кодировка.
- EUC-JPEUCJP Японская кодировка.
Пример 1. Декодирование HTML сущностей
$orig = "I'll \"walk\" the <b>dog</b> now";
$a = htmlentities($orig);
$b = html_entity_decode($a);
echo $a; // I'll "walk" the <b>dog</b> now
echo $b; // I'll "walk" the <b>dog</b> now
// в версиях до PHP 4.3.0 можно сделать так:
function unhtmlentities($string)
{
$trans_tbl = get_html_translation_table(HTML_ENTITIES);
$trans_tbl = array_flip($trans_tbl);
return strtr($string, $trans_tbl);
}
$c = unhtmlentities($a);
echo $c; // I'll "walk" the <b>dog</b> now
Замечание: Может показаться странным, что результатом вызова trim(html_entity_decode(' ')); не является пустая строка Причина том, что ' ' преобразуется не в символ с ASCII-кодом 32 (который удаляется функцией trim()),а в символ с ASCII-кодом 160 (0xa0) в принимаемой по умолчанию кодировке ISO-8859-1.
Смотрите также описание функций htmlentities(), htmlspecialchars(), get_html_translation_table() и urldecode().
Все функции перекодированиеОписание на ru2.php.net
Описание на php.ru