Преобразуйте некоторые символы в объекты HTML:
<?php$str = "<© W3CSçh°°¦§>";echo htmlentities($str);?>HTML-вывод приведенного выше кода выглядит следующим образом (просмотреть исходный код):
<!DOCTYPE html><html><body><© W3CSçh°°¦§></body></html>Вывод приведенного выше кода в браузере выглядит следующим образом:
<© W3CSçh°°¦§>Функция htmlentities() преобразует символы в объекты HTML.
Совет: Чтобы преобразовать объекты HTML обратно в символы, используйте функцию html_entity_decode().
Совет: используйте функцию get_html_translation_table(), чтобы вернуть таблицу перевода, используемую htmlentities().
htmlentities( строка,флаги,набор символов,double_encode )
параметр | описывать |
---|---|
нить | Необходимый. Указывает строку, которую нужно преобразовать. |
флаги | Необязательный. Указывает, как обрабатывать кавычки, недопустимые кодировки и какой тип документа использовать. Доступные типы котировок: ENT_COMPAT — по умолчанию. Кодируются только двойные кавычки. ENT_QUOTES — кодирует двойные и одинарные кавычки. ENT_NOQUOTES — не кодировать кавычки. Неверная кодировка: ENT_IGNORE — игнорировать недопустимые кодировки вместо того, чтобы функция возвращала пустую строку. Этого следует избегать, поскольку это может повлиять на безопасность. ENT_SUBSTITUTE — заменяет недопустимую кодировку указанного символа символом замены Unicode U+FFFD (UTF-8) или &#FFFD; вместо возврата пустой строки. ENT_DISALLOWED — заменяет недопустимые кодовые точки в указанном типе документа символами замены Юникода U+FFFD (UTF-8) или &#FFFD;. Дополнительные флаги, определяющие тип используемого документа: ENT_HTML401 — по умолчанию. Код обрабатывается как HTML 4.01. ENT_HTML5 — код обрабатывается как HTML 5. ENT_XML1 — код обрабатывается как XML 1. ENT_XHTML — как код обработки XHTML. |
набор символов | Необязательный. Строка, определяющая используемый набор символов. Допустимые значения: UTF-8 — по умолчанию. ASCII-совместимый многобайтовый 8-битный Unicode ISO-8859-1 – Западная Европа ISO-8859-15 — Западная Европа (добавлен символ евро + французские и финские буквы отсутствуют в ISO-8859-1) cp866 — набор кириллических символов, специфичный для DOS. cp1251 — набор символов кириллицы, специфичный для Windows. cp1252 — набор западноевропейских символов, специфичный для Windows. КОИ8-Р - Русский BIG5 — традиционный китайский, в основном используется на Тайване. GB2312 — упрощенный китайский, набор символов национального стандарта. BIG5-HKSCS — Big5 с расширением Гонконга Shift_JIS — японский EUC-JP – японский MacRoman — набор символов, используемый операционной системой Mac. Примечание. В версиях PHP до 5.4 нераспознанные наборы символов игнорировались и заменялись ISO-8859-1. Начиная с PHP 5.4, нераспознанные наборы символов игнорируются и заменяются UTF-8. |
двойной_кодирование | Необязательный. Логическое значение, указывающее, следует ли кодировать существующие объекты HTML. ИСТИНА — значение по умолчанию. Каждая сущность будет преобразована. ЛОЖЬ — существующие объекты HTML не будут кодироваться. |
Возвращаемое значение: | Возвращает преобразованную строку. Если строка содержит недопустимую кодировку, возвращается пустая строка, если не установлен флаг ENT_IGNORE или ENT_SUBSTITUTE. |
---|---|
PHP-версия: | 4+ |
Журнал обновлений: | В PHP 5 значение параметра набора символов по умолчанию изменилось на UTF-8. В PHP 5.4 появились новые: ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 и ENT_XHTML. В PHP 5.3 был добавлен ENT_IGNORE. В PHP 5.2.3 был добавлен параметр double_encode . В PHP 4.1 был добавлен параметр набора символов . |
Преобразуйте некоторые символы в объекты HTML:
<?php$str = "Jane & 'Tarzan'";echo htmlentities($str, ENT_COMPAT); // Преобразует только двойные кавычкиsecho "<br>";echo htmlentities($str, ENT_QUOTES); // Преобразует двойные и одиночная кавычкаcho "<br>";echo htmlentities($str, ENT_NOQUOTES); // Не конвертирует кавычки?>HTML-вывод приведенного выше кода выглядит следующим образом (просмотреть исходный код):
<!DOCTYPE html><html><body>Джейн и «Тарзан»<br>Джейн и 'Тарзан'<br>Джейн и «Тарзан»</body></html>Вывод приведенного выше кода в браузере выглядит следующим образом:
Джейн и ТарзанДжейн и ТарзанДжейн и ТарзанПреобразуйте некоторые символы в объекты HTML, используя набор символов Западной Европы:
<?php$str = "Меня зовут Ойвинд Осане. Я норвежец.";echo htmlentities($str, ENT_QUOTES, "ISO-8859-1" // Будут конвертироваться только двойные кавычки (не одинарные), и использует набор символов Западной Европы?>HTML-вывод приведенного выше кода выглядит следующим образом (просмотреть исходный код):
<!DOCTYPE html><html><body>Меня зовут Øyvind Åsane. Я норвежец.</body></html>Вывод приведенного выше кода в браузере выглядит следующим образом:
Меня зовут Ойвинд Осане, я норвежец.