我正在尝试在CodeIgniter 3中找到与insert_or_update
(类似于Laravel提供的)类似的内容。我找到的最接近的是$this->db->replace()
,但我找不到任何内容指定它可以/不能与->where()
一起使用。根据文档我不相信这会起作用,因为它没有列出->where()
作为选项,但我想要仔细检查这一点。
我希望我能做点像......
$data = [...];
$whereSearch = [...];
$this->db->replace($data)->where($whereSearch);
答案 0 :(得分:1)
引用文档的关键是
使用PRIMARY和UNIQUE键作为决定因素。
仅根据您的键替换工作以替换表中的值。您可能会发现Does replace into have a where clause?也很有帮助。
答案 1 :(得分:0)
$this->db->where('column_name',$compared_data);
$this->db->set('column_name',$updated_data);
$this->db->update('table_name');
这会是你正在寻找的吗?