- Custom DataBase Tables
- CDBT Version 2.x
- メソッド・リファレンス
- update_data
update_data
(CDBT 2.0.0)
update_data指定テーブルのデータを更新します
Description
bool update_data ( string $table_name, mixed $data, mixed $where_clause )指定テーブルのデータを更新します。データの更新に成功した場合にはTRUEを返します。最終的なアップデート処理はWordPressの
$wpdb->update()をラップしています。Parameters
- table_name
- データを更新するテーブル名。
- data
- 更新するデータ。カラム名をキーとした連想配列もしくは、ハッシュ形式の文字列で指定します。
下記の更新データ記述は同一となります。
// 連想配列で指定
$data = array(
"column1" => "value1",
"column2" => "value2"
);
// ハッシュ文字列で指定
$data = "column1:value1,column2:value2";
更新するカラムのみの指定で構いません。未指定のカラムの値は変更されません。
- where_clause
- 更新する行の絞り込み条件。カラム名をキーとした連想配列もしくは、ハッシュ形式の文字列(前出の
dataの項目を参照)で指定します。複数指定した際の連結演算子はANDとなります。
Return
データの更新に成功した場合にTRUEが返ります。データ更新に失敗した場合にはFALSEが返ります。
History
| バージョン | 内容 |
|---|---|
| 2.0.0 | CDBT v1の同名メソッドをリファクタリング |
| 2.0.5 | cdbt_before_update_dataとcdbt_before_update_whereのフィルターを追加 |
Example
例1 特定のカラム値を持つデータ(行)を一括で更新する。
<?php
global $cdbt;
$table_name = "prefix_table";
$data = [ "remove_flag" => true ];
$where_clause = [ "group_id" => 3 ];
if ( $cdbt->update_data( $table_name, $data, $where_clause ) ) {
echo "The specified rows was logical delete.";
}
Caution
更新データとしてバイナリデータを取り扱う場合、
get_binary_context()メソッドを使用してバイナリのコンテキストを生成する必要がある。Included Hooks
- cdbt_before_update_data更新するデータをフィルターします
- cdbt_before_update_where更新条件をフィルターします
- cdbt_after_updated_dataデータ更新処理後にフックします
Reference
Related Methods
- get_data()指定のテーブルから任意のデータを取得します
- find_data()指定されたキーワードを含むデータを検索します
- insert_data()指定のテーブルにデータ(行)を挿入します
Related Codex