JA 日本語
バージョン: v2.3.0

update

テーブル内のレコードを更新します。

update($table, $data, $where)
戻り値
[PDOStatement] 実行されたクエリの PDOStatement インスタンス。
insert() と同様に、このメソッドは配列のシリアライズと自動型判定をサポートします。また、算術更新のための [+][-][*][/] 演算子も利用できます。
class Foo {
	var $bar = "cat";

	public function __wakeup()
	{
		$this->bar = "dog";
	}
}

$object_data = new Foo();

$fp = fopen($_FILES[ "file" ][ "tmp_name" ], "rb");

$database->update("account", [
	"type" => "user",

	// すべての年齢を 1 増やします。
	"age[+]" => 1,

	// すべてのレベルを 5 減らします。
	"level[-]" => 5,

	// すべてのスコアを 2 倍にします。
	"score[*]" => 2,

	// 配列値。
	"lang" => ["en", "fr", "jp", "cn"],

	// JSON としてエンコードする配列値。
	"lang [JSON]" => ["en", "fr", "jp", "cn"],

	// 真偽値。
	"is_locked" => true,

	// オブジェクト値。
	"object_data" => $object_data,

	// ラージオブジェクト(LOB)。
	"image" => $fp
], [
	"user_id[<]" => 1000
]);

// `update()` は PDOStatement を返すため、必要に応じてそのメソッドを呼び出せます。
$data = $database->update("account", [
	"age[+]" => 1
], [
	"user_id[>]" => 100
]);

// 直前の SQL 文で影響を受けた行数を返します。
echo $data->rowCount();

// 参考: https://php.net/manual/en/class.pdostatement.php