PHP htmlspecialchars_decode()Функции

PHP String 参考手册Справочное руководство по строкам PHP

Пример

Преобразовать предопределённые HTML-сущности "<" (знак меньше) и ">" (знак больше) в символы:

<?php $str = "Это какой-то &lt;b&gt;жирный&lt;/b&gt; текст."; echo htmlspecialchars_decode($str); ?>

HTML-вывод приведённого выше кода выглядит следующим образом (просмотрите исходный код):

<!DOCTYPE html> <html> <body> Это какой-то <b>жирный</b> текст. </body> </html>

Вывод браузера для приведённого выше кода выглядит так:

Это какой-то жирный текст.


Определение и использование

Функция htmlspecialchars_decode() преобразует некоторые предопределённые HTML-сущности в символы.

HTML-сущности, которые будут декодированы:

  • &amp; декодируется в & (амперсанд)
  • &quot; декодируется в " (двойная кавычка)
  • &apos; декодируется в ' (одинарная кавычка)
  • &lt; декодируется в < (меньше чем)
  • &gt; декодируется в > (больше чем)

Функция htmlspecialchars_decode() являетсяhtmlspecialchars()обратной функцией функции htmlspecialchars().


Синтаксис

htmlspecialchars_decode(string,flags)

Параметр Описание
string Обязательный. Указывает строку для декодирования.
флаги Необязательный. Указывает, как обрабатывать кавычки и какой тип документа использовать.

Доступные типы кавычек:

  • ENT_COMPAT - по умолчанию. Декодирует только двойные кавычки.
  • ENT_QUOTES — декодирует двойные и одинарные кавычки.
  • ENT_NOQUOTES — не декодирует никакие кавычки.

Дополнительные флаги, указывающие используемый документ:

  • ENT_HTML401 — по умолчанию. Обрабатывать код как HTML 4.01.
  • ENT_HTML5 — обрабатывать код как HTML 5.
  • ENT_XML1 — обрабатывать код как XML 1.
  • ENT_XHTML — обрабатывать код как XHTML.

Технические детали

Возвращаемое значение: Возвращает преобразованную строку.
Версия PHP: 5.1.0+
Список изменений: В PHP 5.4 были добавлены дополнительные флаги для указания типа документа: ENT_HTML401, ENT_HTML5, ENT_XML1 и ENT_XHTML.


Другие примеры

Пример 1

Преобразование некоторых предопределенных HTML-сущностей в символы:

<?php $str = "Jane &amp; 'Tarzan'"; echo htmlspecialchars_decode($str, ENT_COMPAT); //По умолчанию декодируются только двойные кавычки. echo "<br>"; echo htmlspecialchars_decode($str, ENT_QUOTES); //Декодировать двойные и одинарные кавычки. echo "<br>"; echo htmlspecialchars_decode($str, ENT_NOQUOTES); //Не декодировать никакие кавычки. ?>

HTML-вывод приведённого выше кода выглядит следующим образом (просмотрите исходный код):

<!DOCTYPE html> <html> <body> Jane & 'Tarzan'<br> Jane & 'Tarzan'<br> Jane & 'Tarzan' </body> </html>

Вывод браузера для приведённого выше кода выглядит так:

Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'


Пример 2

Преобразовать предопределённые HTML-сущности в двойные кавычки:

<?php $str = 'I love &quot;PHP&quot;.'; echo htmlspecialchars_decode($str, ENT_QUOTES); //Декодировать двойные и одинарные кавычки. ?>

HTML-вывод приведённого выше кода выглядит следующим образом (просмотрите исходный код):

<!DOCTYPE html> <html> <body> I love "PHP". </body> </html>

Вывод браузера для приведённого выше кода выглядит так:

I love "PHP".



PHP String 参考手册Справочное руководство по строкам PHP Другие расширения