WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

wp_unslash() WP 3.6

Удаляет слэши из переданной строки, или из строковых элементов переданного массива или свойств объекта. Массив может быть любой вложенности.

Например, эту функцию нужно использовать при добавлении $_POST данных в БД с помощью $wpdb->insert(), т.к. $wpdb->insert() ожидает не экранированные данные, тогда как данные в $_POST всегда экранируется в WP.

Важно знать, что эта функция используется в функциях API, таких как: update_post_meta(), wp_update_post(), wp_insert_post() и т.д. Все эти функции ожидают экранированные данные. Исключение - это функции опций: update_option(), add_option().

Используйте эту функцию вместо stripslashes_deep().

Если наоборот нужно добавить слэши, используйте: wp_slash().

Работает на основе: stripslashes_deep(), map_deep(), stripslashes_from_strings_only()
1 раз = 0.000027с = очень быстро | 50000 раз = 0.21с = очень быстро | PHP 7.0.5, WP 4.5.2

Хуков нет.

Возвращает

Строку/Массив без экранированных слэшей.

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

$value = wp_unslash( $value );
$value(строка/массив) (обязательный)
Строка или массив из которых нужно удалить слэши.

Примеры

#1. Удаление слэшей из строки

$val = 'Жером Д\'Амброзио - неизвестный гонщик.';
$val = wp_unslash( $val );
echo $val;

// вернет:
// Жером Д'Амброзио - неизвестный гонщик.

#2. Удаление слэшей из элементов массива

Эта функция может быть использована вместо stripslashes_deep(). Так как это рекурсивная функция, она удалит слэши из всех массивов и вложенных в них массивов.

$arr = array(
		"Ты читал \'Человек в футляре\'?",
		array( "\'Человек в футляре\' очень интересный рассказ" )
	   );

$arr = wp_unslash( $arr );
/*
 Вернет: 
 array(
	  "Ты читал 'Человек в футляре'?",
	  array( "'Человек в футляре' очень интересный рассказ" )
 );
*/

Список изменений

С версии 3.6.0 Введена.

Код wp_unslash() WP 5.5.1

wp-includes/formatting.php
<?php
function wp_unslash( $value ) {
	return stripslashes_deep( $value );
}

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

Из раздела: Вспомогательные

3 коммента