WPDB::INSERT() — Простой способ добавления данных в таблицу

WPDB::INSERT() — Вставка строки в таблицу

Функция WPDB::INSERT() позволяет вставлять новые строки в таблицы базы данных WordPress. Это простой и удобный способ добавления данных.

Пример использования

Вот несколько примеров, как можно использовать эту функцию:

Простой пример вставки данных

global $wpdb;
$wpdb->insert(
    'table',
    array(
        'column1' => 'foo',
        'column2' => 'bar',
    )
);

Вставка с указанием формата данных

global $wpdb;
$wpdb->insert(
    'table',
    array(
        'column1' => 'foo',
        'column2' => 1337,
    ),
    array(
        '%s', // Это строка
        '%d', // Это целое число
    )
);

Описание метода

  • Метод класса: wpdb
  • Использует: wpdb::_insert_replace_helper()
  • Крючки (Hooks): Отсутствуют.

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

Метод возвращает:

  • int | false: количество вставленных строк или false, если произошла ошибка.

Аргументы функции

  • $table (string, обязательный): имя таблицы, куда будут вставляться данные.
  • $data (array, обязательный): массив данных для вставки в формате ключ => значение. При этом ключи соответствуют названиям столбцов таблицы. Обратите внимание, что значения должны быть "сырыми", т.е. без SQL экранирования.
  • $format (string[]|string, не обязательный): массив форматов для каждого значения в $data. Если передан как строка, будет использован для всех значений. Форматы могут быть такими:
    • '%d' — целое число
    • '%f' — число с плавающей точкой
    • '%s' — строка
      Если не указан, все значения будут трактоваться как строки.

По умолчанию: null

Примеры применения

1. Получение ID вставленного объекта

Чтобы получить ID последнего вставленного объекта, воспользуйтесь следующим кодом:

global $wpdb;

$table = $wpdb->prefix . 'my_table_name';
$data = [ 'column1' => 'data one', 'column2' => 123 ];

$wpdb->insert( $table, $data );

$my_id = $wpdb->insert_id; // здесь хранится ID вставленной строки

2. Вставка строки в таблицу базы данных

Вставка строки с настройкой типов данных:

// Вставка значения в два столбца (значения остальных столбцов будут по умолчанию)
$wpdb->insert( 'table', [ 'column' => 'foo', 'field' => 'bar' ] );

// Указание типов данных
$wpdb->insert( 'table', [ 'column' => 'foo', 'field' => 1337 ], [ '%s', '%d' ] );

Примечания

  • Для правильной работы с данными рекомендуется использовать функцию wpdb::prepare() для предварительной обработки строк.
  • Убедитесь, что типы данных, которые вы передаете, совпадают с типами, ожидаемыми базой данных.

Изменения

  • С версии 2.5.0: Функция была введена в WordPress.

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

  • wpdb::delete() — удаление строк из таблицы.
  • wpdb::update() — обновление данных в таблице.
  • wpdb::get_results() — получение результатов запроса к базе данных.

Теперь вы знаете, как использовать функцию WPDB::INSERT() для вставки данных в таблицы WordPress!

Leave a Reply

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