2

私は記録のステータスを変更する必要がある CodeIgniter プロジェクトに取り組んでいます。実際には、id が ids 文字列にある/あるレコードのみを更新する必要があります。

現在、コードで更新されるレコードは 1 つだけです。私のモデル関数は次のとおりです。

public function markUnRead() {
    $ids = 1,2,3,4,5,6;
    $update = array('status' => 0);
    $this->db->where_in('id', $ids);
    $this->db->update('tableName',$update);

    if ($this->db->affected_rows() > 0) {
        return true;
    } else {
        return false;
    }
}

誰か助けてください。

4

1 に答える 1

3

メソッドの 2 番目のパラメーターは次のようにwhere_in()する必要がありますarray

$this->db->where_in('id', array(1,2,3,4,5,6));

何らかの理由で、$idsが のような文字列の場合、次の"1,2,3,4,5,6"方法で機能させることができます。

$ids = explode(',', $ids);
$this->db->where_in('id', $ids);
于 2013-09-06T09:23:36.243 に答える