PHP CodeIgniter DB获取受影响的行ID的数组

时间:2018-09-05 06:48:05

标签: php codeigniter codeigniter-3

查询之后是否可以获得受影响的行的数组? $this->db->affected_rows()可以返回总数,但是我需要的是一个受所有ID影响的数组。可能吗?我的查询如下:

$this->db->where_not_in('id', $notEditableIds)
         ->where($key, $oldValue)
         ->or_where($key, NULL)
         ->update('fields', array($key => $value));

1 个答案:

答案 0 :(得分:1)

只需在更新前获取目标行:-

$result=$this->db->select('id')
     ->from('table_name')
     ->where_not_in('id', $notEditableIds)
     ->where($key, $oldValue)
     ->or_where($key, NULL)->result_array();
$this->db->where_not_in('id', $notEditableIds)
         ->where($key, $oldValue)
         ->or_where($key, NULL)
         ->update('fields', array($key => $value));
if($this->db->affected_rows()){
   return $result;
}
 else{
 return []; 
}