WordPress как на ладони
wordpress jino

sanitize_text_field() 2.9

Очищает строку передаваемую из поля input (обычно при сохранении в базу данных) или при получении из БД.

Удаляет всё лишнее, оставляя чистый текст: без тегов, переносов строк и т.д.

Что делает функция:
  1. Проверяет ошибки в кодировке UTF-8;
  2. Конвертирует одиночный знак < в HTML сущность;
  3. Удалят все теги;
  4. Удаляет переносы строк (\r\n), табуляцию (\t) и невидимые символы пробела;
  5. Удаляет пробелы на концах строки.
  6. Заменяет несколько пробелов на одни.
  7. Удаляет октеты: %[a-f0-9]{2}.
Чем отличаются esc_html() и sanitize_text_field():

esc_html() менее жесткая — она только переводит HTML символы и сущности в видимый текст, так, чтобы браузер не обрабатывал текст как HTML, т.е. сохраняет все данные и делает их читаемыми.

sanitize_text_field() — удаляет все HTML символы, переносы строк, табуляции и HTML сущности. Функция оставляет чистый текст, т.е. функция делает все, чтобы значение поля input было безопасно для сохранения.

Работает на основе: wp_strip_all_tags(), wp_check_invalid_utf8()
✈ 1 раз = 0.000051с = очень быстро | 50000 раз = 0.67с = очень быстро PHP 7.0.2, WP 4.4.2

Хуков нет.

Возвращает

Очищенную строку.

Использование

sanitize_text_field( $str );
$str(строка)
Строка, которую нужно очистить.

Примеры

#1 Как работает функция

echo sanitize_text_field( 'Проверим, <em>как</em> 
очищается строка     <br>. ' );
//> 'Проверим, как очищается строка .'

echo sanitize_text_field( 'http://site.ru/foo.php#bar' );
//> 'http://site.ru/foo.php#bar'

var_dump( sanitize_text_field( 123 ) );
//> string(3) "123"

#2 Использование функции в input

Этот пример, показывает как использовать функцию в теге INPUT. Предположим, что мы принимаем $_POST запрос со значением поля:

<input type="text" name="str" value="<?php echo sanitize_text_field( $_POST['str'] ) ?>" />

Cвязанные функции

Из метки: sanitize_ (очистка)

Еще из раздела: Очистка данных

Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться