Учебник по PHP

PHP ГЛАВНАЯ Введение в PHP Установка PHP Синтаксис PHP Комментарии PHP PHP-переменные PHP-эхо/печать Типы данных PHP PHP-строки PHP-номера PHP-математика PHP-константы PHP-операторы PHP Если... Иначе... Иначе PHP-переключатель PHP-циклы PHP-функции PHP-массивы PHP-суперглобальные переменные PHP регулярное выражение

PHP- формы

Обработка форм PHP Проверка формы PHP Требуется PHP-форма URL-адрес формы PHP/электронная почта PHP-форма завершена

PHP продвинутый

Дата и время PHP PHP включает Обработка файлов PHP Открытие/чтение файла PHP Создание/запись файла PHP Загрузка файла PHP PHP-куки PHP-сессии PHP-фильтры Расширенные фильтры PHP Функции обратного вызова PHP PHP JSON Исключения PHP

PHP ООП

PHP Что такое ООП PHP-классы/объекты PHP-конструктор PHP-деструктор Модификаторы доступа PHP Наследование PHP PHP-константы Абстрактные классы PHP PHP-интерфейсы Особенности PHP Статические методы PHP Статические свойства PHP Пространства имен PHP Итерации PHP

База данных MySQL

База данных MySQL Подключиться к MySQL MySQL Создать БД MySQL Создать таблицу Вставка данных MySQL MySQL Получить последний идентификатор MySQL Вставить несколько MySQL подготовлен Выбор данных MySQL MySQL Где Порядок MySQL MySQL Удалить данные Данные обновления MySQL Предельные данные MySQL

PHP XML

XML-парсеры PHP Парсер PHP SimpleXML PHP SimpleXML — Получить PHP XML Expat PHP XML DOM

PHP — АЯКС

Введение в АЯКС АЯКС PHP База данных AJAX АЯКС XML AJAX-поиск в реальном времени АЯКС-опрос

Примеры PHP

Примеры PHP PHP-компилятор PHP-викторина PHP-упражнения PHP-сертификат

Справочник по PHP

Обзор PHP PHP-массив Календарь PHP Дата PHP PHP-каталог Ошибка PHP PHP-исключение Файловая система PHP PHP-фильтр PHP FTP PHP JSON Ключевые слова PHP PHP-библиотека XML PHP-почта PHP-математика PHP Разное PHP MySQLi PHP-сеть Управление выводом PHP PHP регулярное выражение PHP SimpleXML PHP-поток PHP-строка
addcslashes () добавляетслэш() bin2hex() нарезать() чр() chunk_split() convert_cyr_string() convert_uudecode() convert_uuencode() количество_символов() crc32() крипта() эхо() взорваться() fprint() get_html_translation_table() иврит () иврит () hex2bin() html_entity_decode() htmlсущности() htmlspecialchars_decode() htmlспециальныесимволы() взорваться () присоединиться() lcfirst() Левенштейн() локальная конв() лтрим () md5() md5_file() метафон() money_format() nl_langinfo () nl2br() число_формат() слова() parse_str() Распечатать() printf() quoted_printable_decode() quoted_printable_encode() цитата() rtrim() установить локаль() Ша1() sha1_file() подобный_текст() звук() спринтф() sscanf() str_getcsv () str_ireplace () str_pad() str_repeat() str_replace() str_rot13 () str_shuffle() str_split () str_word_count() strcasecmp() стрхр() стркмп() стрколл() strcspn() strip_tags() полосы косой черты () полоски () комиксы () полоска () стрлен() strnatcasecmp() strnatcmp() strncasecmp() стрнкмп() стрпбрк () стрпос() стррчр() стррев () стрипос() стррпос() стрспн () улстр() стрток() strtolower() strtoupper() стртр() substr() substr_compare() substr_count() substr_replace() подрезать() ucfirst() ucwords() vfprintf() vprintf() вспринтф() перенос слова()
Обработка переменных PHP XML-парсер PHP PHP-архив Часовые пояса PHP

Функция PHP htmlspecialchars()

❮ Справочник по строкам PHP

Пример

Преобразуйте предопределенные символы «<» (меньше) и «>» (больше) в объекты HTML:

<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>

HTML-вывод приведенного выше кода будет (Просмотреть исходный код):

<!DOCTYPE html>
<html>
<body>
This is some &lt;b&gt;bold&lt;/b&gt; text.
</body>
</html>

Вывод кода выше в браузере будет таким:

This is some <b>bold</b> text.

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

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

Предопределенные символы:

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

Совет. Чтобы преобразовать специальные объекты HTML обратно в символы, используйте функцию htmlspecialchars_decode() .


Синтаксис

htmlspecialchars(string,flags,character-set,double_encode)

Значения параметров

Parameter Description
string Required. Specifies the string to convert
flags Optional. Specifies how to handle quotes, invalid encoding and the used document type.

The available quote styles are:

  • ENT_COMPAT - Default. Encodes only double quotes
  • ENT_QUOTES - Encodes double and single quotes
  • ENT_NOQUOTES - Does not encode any quotes

Invalid encoding:

  • ENT_IGNORE - Ignores invalid encoding instead of having the function return an empty string. Should be avoided, as it may have security implications.
  • ENT_SUBSTITUTE - Replaces invalid encoding for a specified character set with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD; instead of returning an empty string.
  • ENT_DISALLOWED - Replaces code points that are invalid in the specified doctype with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD;

Additional flags for specifying the used doctype:

  • ENT_HTML401 - Default. Handle code as HTML 4.01
  • ENT_HTML5 - Handle code as HTML 5
  • ENT_XML1 - Handle code as XML 1
  • ENT_XHTML - Handle code as XHTML
character-set Optional. A string that specifies which character-set to use.

Allowed values are:

  • UTF-8 - Default. ASCII compatible multi-byte 8-bit Unicode
  • ISO-8859-1 - Western European
  • ISO-8859-15 - Western European (adds the Euro sign + French and Finnish letters missing in ISO-8859-1)
  • cp866 - DOS-specific Cyrillic charset
  • cp1251 - Windows-specific Cyrillic charset
  • cp1252 - Windows specific charset for Western European
  • KOI8-R - Russian
  • BIG5 - Traditional Chinese, mainly used in Taiwan
  • GB2312 - Simplified Chinese, national standard character set
  • BIG5-HKSCS - Big5 with Hong Kong extensions
  • Shift_JIS - Japanese
  • EUC-JP - Japanese
  • MacRoman - Character-set that was used by Mac OS

Note: Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8.

double_encode Optional. A boolean value that specifies whether to encode existing html entities or not.
  • TRUE - Default. Will convert everything
  • FALSE - Will not encode existing html entities


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

Возвращаемое значение: Возвращает преобразованную строку

. Если строка содержит недопустимую кодировку, будет возвращена пустая строка, если только не установлены флаги ENT_IGNORE или ENT_SUBSTITUTE.
Версия PHP: 4+
Список изменений: PHP 5.6 - Изменено значение по умолчанию для параметра набора символов на значение набора символов по умолчанию (в конфигурации).
PHP 5.4 - Изменено значение по умолчанию для параметра набора символов на 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 htmlspecialchars($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // Does not convert any quotes
?>

HTML-вывод приведенного выше кода будет (Просмотреть исходный код):

<!DOCTYPE html>
<html>
<body>
Jane &amp; 'Tarzan'<br>
Jane &amp; &#039;Tarzan&#039;<br>
Jane &amp; 'Tarzan'
</body>
</html>

Вывод кода выше в браузере будет таким:

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

Пример

Преобразование двойных кавычек в объекты HTML:

<?php
$str = 'I love "PHP".';
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
?>

HTML-вывод приведенного выше кода будет (Просмотреть исходный код):

<!DOCTYPE html>
<html>
<body>
I love &quot;PHP&quot;.
</body>
</html>

Вывод кода выше в браузере будет таким:

I love "PHP".

❮ Справочник по строкам PHP