WP_SLASH(): добавление обратных слешей в WordPress

# WP_SLASH() │ WP 3.6.0

Функция WP_SLASH() добавляет обратные слеши (`) к строкам или массивам строк. Это нужно, когда вы подготавливаете данные для функций API WordPress, которые ожидают данные с добавленными слешами, например, update_post_meta() или wp_insert_post()`.

Важно помнить, что эту функцию **не нужно** использовать для экранирования данных, которые передаются напрямую в SQL-запросы.

Если вам нужно убрать слеши, используйте функцию wp_unslash().

### Производительность

- 1 раз — 0.000001 сек (скорость света)
- 50000 раз — 0.02 сек (скорость света)
- PHP 7.2.16, WP 5.1.1

### Хуки

Функция не использует хуки.

## Возврат

Функция возвращает строку или массив. Это будет экранированное значение $value в том же типе, в каком оно было передано.

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

```php
wp_slash( $value );

Параметры

  • $value (строка или массив, обязательный) — строка или массив данных, к которым нужно добавить слеши.

Примеры

Пример 1: Использование с строкой

$name = "O'Reilly & Associates";
$name = wp_slash($name);
echo $name;
// Вывод: O'Reilly & Associates

Пример 2: Использование с массивом

$names = array( "Baba O'Reilly", "class of '99" );
$names = wp_slash( $names );
print_r( $names );

/*
Вывод:
Array
(
    [0] => Baba O'Reilly
    [1] => class of '99
)
*/

Изменения

  • С версии 3.6.0 - функция была введена.
  • С версии 5.5.0 - нестроковые значения остаются неизменными.

Код функции

function wp_slash( $value ) {
    if ( is_array( $value ) ) {
        $value = array_map( 'wp_slash', $value );
    }

    if ( is_string( $value ) ) {
        return addslashes( $value );
    }

    return $value;
}

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

Вот некоторые вспомогательные функции, которые могут быть полезны при работе с данными в WordPress:

  • array_is_list()
  • array_key_first()
  • array_key_last()
  • checked()
  • disabled()
  • wp_die()
  • wp_trim_words()

Эти функции помогут вам в различных задачах при разработке на WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *