代码之家  ›  专栏  ›  技术社区  ›  The50

PHP CodeIgniter DB get受影响行id的数组

  •  0
  • The50  · 技术社区  · 6 年前

    是否可以在查询之后获取受影响行的数组? $this->db->affected_rows()

    $this->db->where_not_in('id', $notEditableIds)
             ->where($key, $oldValue)
             ->or_where($key, NULL)
             ->update('fields', array($key => $value));
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   Rajeev Ranjan    6 年前

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

    $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 []; 
    }