WP_MAGIC_QUOTES() Function in WordPress: Usage, Performance, and Examples

# WP_MAGIC_QUOTES() │ WP 3.0.0

Функция wp_magic_quotes() автоматически добавляет магические кавычки к данным из массивов $_GET, $_POST, $_COOKIE, и $_SERVER. Также она объединяет массивы $_GET и $_POST, чтобы сформировать массив $_REQUEST. Если вам нужны данные из $_SERVER, $_COOKIE или $_ENV, обращайтесь к ним напрямую.

> **Важно:** Это внутренняя функция, предназначенная для использования только в ядре WordPress. Рекомендуется не использовать её в вашем коде.

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

- Время выполнения 1 раза — 0.000084 сек (очень быстро)
- 50000 раз — 1.83 сек (быстро)
- Версия PHP: 7.0.8, WordPress: 4.6.1

## Хуки

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

## Возврат (RETURN)

Функция возвращает null, то есть ничего (null).

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

Чтобы использовать эту функцию, просто вызовите её:

```php
wp_magic_quotes();

Примеры использования (EXAMPLES)

Удаление обратных слэшей

Когда вы получаете строку в формате JSON, её нужно очистить, чтобы позднее правильно обработать и использовать в вашем коде.

$json = strval( $_POST['urls'] );

// К сожалению, WordPress добавляет магические кавычки к данным POST.
if ( function_exists('wp_magic_quotes') && did_action('plugins_loaded') ) {
    $json = stripslashes( $json );
}

Изменения (CHANGELOG)

  • С версии 3.0.0 — функция была добавлена.

Код функции (WP_MAGIC_QUOTES CODE)

Вот как выглядит код этой функции в файле wp-includes/load.php:

function wp_magic_quotes() {
    // Экранируем данные с помощью wpdb.
    $_GET    = add_magic_quotes( $_GET );
    $_POST   = add_magic_quotes( $_POST );
    $_COOKIE = add_magic_quotes( $_COOKIE );
    $_SERVER = add_magic_quotes( $_SERVER );

    // Объединяем GET и POST для формирования REQUEST.
    $_REQUEST = array_merge( $_GET, $_POST );
}

Связанные функции (RELATED FUNCTIONS)

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

  • _doing_it_wrong()
  • cache_javascript_headers()
  • do_robots()
  • download_url()
  • get_privacy_policy_url()
  • maybe_convert_table_to_utf8mb4()
  • nocache_headers()
  • show_admin_bar()
  • wp_check_browser_version()
  • wp_die()
  • wp_editor()
  • wp_get_raw_referer()
  • wp_get_referer()
  • wp_install_defaults()
  • wp_mail()
  • wp_oembed_get()
  • wp_redirect()
  • wp_safe_redirect()
  • wp_star_rating()
  • wp_timezone_choice()
  • wp_validate_redirect()

Leave a Reply

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