次のようにしてみてください:
$data = array('current_login' => date('Y-m-d H:i:s'));
$this->db->set('last_login', 'current_login', false);
$this->db->where('id', 'some_id');
$this->db->update('login_table', $data);
set()
に特に注意してください 呼び出しの3番目のパラメーター。 false
CodeIgniterが2番目のパラメーターを引用しないようにします。これにより、値を文字列値ではなくテーブル列として扱うことができます。特別な処理を必要としないデータについては、それらの宣言をすべて$data
にまとめることができます。 配列。
上記のコードによって生成されたクエリ:
UPDATE `login_table`
SET last_login = current_login, `current_login` = '2018-01-18 15:24:13'
WHERE `id` = 'some_id'