sanitize_textarea_field() WP 4.7.0
Очищает строку передаваемую из поля textarea (при сохранении в базу данных) или при получении из БД.
Эта функция делает все тоже что и sanitize_text_field(), только оставляет переносы строк (\n), пробелы и другие символы, которые можно использовать в поле textarea.
Удаляет все HTML символы, табуляции, HTML сущности и т.д. Оставляет чистый текст. Функция делает все, чтобы значение поля textarea можно было безопасно использовать при сохранении.
Что делает функция:
- Конвертирует одиночный знак
<
в HTML сущность. - Удалят все теги.
- Удаляет пробелы на концах строки.
- Удаляет октеты:
%[a-f0-9]{2}
. - Проверяет ошибки в кодировке UTF-8.
Отличие от esc_textarea()
esc_textarea() предназначена для очистки строки перед выводом её на экран в поле textarea. А эта функция предназначена для очистки передаваемой строки перед сохранением её в БД, в случаях когда в строке не должно быть HTML тегов.
Работает на основе: _sanitize_text_fields()
1 раз — 0.000098 сек (очень быстро) | 50000 раз — 1.17 сек (быстро) | PHP 7.1.2, WP 4.7.3
Хуки из функции
Возвращает
Очищенную строку.
Использование
sanitize_textarea_field( $str );
- $str(строка) (обязательный)
- Строка, которую нужно очистить.
Примеры
#1 Демонстрация работы
$text = 'Проверим, <em>как</em> очищается > строка < <br>. '; $text = sanitize_textarea_field( $text ); var_dump( $text ); /* string(80) "Проверим, как очищается > строка < ." */
Заметки
- Смотрите: sanitize_text_field()
Список изменений
С версии 4.7.0 | Введена. |
Код sanitize_textarea_field() sanitize textarea field WP 5.6.2
function sanitize_textarea_field( $str ) {
$filtered = _sanitize_text_fields( $str, true );
/**
* Filters a sanitized textarea field string.
*
* @since 4.7.0
*
* @param string $filtered The sanitized string.
* @param string $str The string prior to being sanitized.
*/
return apply_filters( 'sanitize_textarea_field', $filtered, $str );
}