Функция ADD_MAGIC_QUOTES() в WordPress 0.71: описание и примеры использования

# Функция ADD_MAGIC_QUOTES() │ WP 0.71

Функция add_magic_quotes() используется для экранирования символов ', " и  в элементах массива. Она также работает с многомерными массивами.

Это рекурсивная функция, которая основана на функции addslashes() языка PHP. Она проходит по массиву и экранирует значения его элементов.

Эта функция почти повторяет работу функции wp_slash(). Главное отличие в том, что wp_slash() может обрабатывать строки, а не только массивы.

**Важные моменты:**

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

## Возвращаемое значение

Функция возвращает массив. Санитизированный $input_array.

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

Чтобы воспользоваться функцией, вызовите её с массивом:

```php
add_magic_quotes( $input_array );

Параметры:

  • $input_array (обязательный) — массив, элементы которого нужно обработать.

Примеры

Пример работы функции:

$array = array(
    "одинарная кавычка - '",
    array('вложенный массив, с двойными кавычками - "'),
    'обратный слэш -  текст'
);

$new_array = add_magic_quotes( $array );

print_r( $new_array );

Вывод:

Array
(
    [0] => одинарная кавычка - '
    [1] => Array
        (
            [0] => вложенный массив, с двойными кавычками - "
        )

    [2] => обратный слэш -  текст
)

История изменений

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

Код функции ADD_MAGIC_QUOTES()

Файл: wp-includes/functions.php

function add_magic_quotes( $input_array ) {
    foreach ( (array) $input_array as $k => $v ) {
        if ( is_array( $v ) ) {
            $input_array[ $k ] = add_magic_quotes( $v );
        } elseif ( is_string( $v ) ) {
            $input_array[ $k ] = addslashes( $v );
        }
    }

    return $input_array;
}

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

  • absint()
  • antispambot()
  • backslashit()
  • balanceTags()
  • capital_P_dangit()
  • convert_smilies()
  • ent2ncr()
  • force_balance_tags()
  • links_add_target()
  • make_clickable()
  • normalize_whitespace()
  • number_format_i18n()
  • remove_accents()
  • set_url_scheme()
  • shortcode_unautop()
  • size_format()
  • strip_fragment_from_url()
  • trailingslashit()
  • untrailingslashit()
  • url_shorten()
  • user_trailingslashit()
  • utf8_uri_encode()
  • wp_convert_hr_to_bytes()
  • wp_html_excerpt()
  • wp_rel_nofollow()
  • wp_specialchars_decode()
  • wp_trim_words()
  • wpautop()
  • wptexturize()
  • zeroise()

Leave a Reply

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