Replaces a row in the table or inserts it if it does not exist, based on a PRIMARY KEY or a UNIQUE index.
Description
A REPLACE works exactly like an INSERT, except that if an old row in the table has the same value as a new row for a PRIMARY KEY or a UNIQUE index, the old row is deleted before the new row is inserted. Examples: $wpdb->replace(
'table',
array(
'ID' => 123,
'column1' => 'foo',
'column2' => 'bar',
)
);
$wpdb->replace(
'table',
array(
'ID' => 456,
'column1' => 'foo',
'column2' => 1337,
),
array(
'%d',
'%s',
'%d',
)
);
Parameters
$tablestring
Table name.
$dataarray
Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped). A primary key or unique index is required to perform a replace operation. Sending a null value will cause the column to be set to NULL - the corresponding format is ignored in this case.
$formatstring[]|stringoptional
An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data. A format is one of '%d', '%f', '%s' (integer, float, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types. Default null.Default: null
Signature, return type and hooks compared across 5 parsed releases.
About this page
Parsed data
Generated from the wordpress-develop 6.8.8 tag, from src/wp-includes/class-wpdb.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.