如何在codeigniter的update函数中使用sqlreplace函数?

wswtfjt7  于 2021-08-09  发布在  Java
关注(0)|答案(1)|浏览(295)

我尝试了以下方法来将sql函数替换到update查询中。

ee()->db->where_in('entry_id', $entrie_ids);
$data['title'] = 'REPLACE(title, "'.$ss_find.'", "'.$ss_replace.'")';
ee()->db->update('channel_titles', $data);

但是它将replace作为字符串,而不是replace sql函数
我想得到一个解决方案,通过适当的代码点火器功能,而不直接运行纯sql查询。
你知道这件事吗?

chy5wohz

chy5wohz1#

你好,我有办法了。

ee()->db->where_in('entry_id', $entrie_ids);
    $replace_function = 'REPLACE(title, "'.$ss_find.'", "'.$ss_replace.'")';
    ee()->db->set('title', $replace_function, FALSE); //
    ee()->db->update('channel_titles');
    $bob = ee()->db->last_query();

我们应该使用set函数并在set函数的第三个参数中传递假值。如果设置为false,这个东西将防止数据被转义。

相关问题