stripslashes_deep()
Проходить масивом, об’єктом, скаляром і видаляє екрануючі слеші ( ) у рядкових значень.
Якщо передано багатовимірний масив, для кожного значення масиву, яке також є масивом, використовується функція array_map() з фільтром stripslashes() і всі значення масиву будь-якої глибини будуть очищені від .
Замість цієї функції рекомендується використовувати wp_unslash() .
wp_unslash()
Хуків немає.
Повертає
Разное
. масив із віддаленими з його рядкових значень.
Використання
$ value = stripslashes_deep ($ value);
-
$value
(рядок/масив) (обов’язковий) -
Масив або рядок, який потрібно очистити від екрануючих слешів
.
Приклади
#1 Очищення від слешів глобальних масивів
Припустимо, нам потрібно очистити від слешів глобальні масиви $_POST, $_GET, $_COOKIE, або $_REQUEST, під час розробки своєї програми в середовищі WordPress.
Наприклад, ми створюємо сторінку контактів, яка використовує форму надсилання повідомлення. Щоб отримати дані без слешів, надіслані через цю форму ми можемо пропустити весь масив $_POST через функцію:
$_POST = stripslashes_deep( $_POST );
Функція пройде за всіма даними, навіть якщо масив багатовимірний і видалить у всіх значень масиву і під масивів.
#2 Хороша практика написання коду
WordPress додає сліши до $_POST/$_GET/$_REQUEST/$_COOKIE незалежно від того, що повертає get_magic_quotes_gpc() . Тому в контексті WordPress при використанні цих змінних завжди слід видаляти слеші, що екрануються.
Приклад:
$my_post = stripslashes_deep( $_POST ); $my_value = $my_post['value'];
Or:
$my_value = stripslashes( $_POST['value'] );
список змін
З версії 2.0.0 | Введено. |
Код stripslashes_deep() stripslashes deep WP 6.0.2
function stripslashes_deep( $value ) { return map_deep( $value, 'stripslashes_from_strings_only'); }