0

我希望能够接受可以在查询中使用的一系列约束。当我使用 foreach 循环时,例如

$this->db->select('id');
$this->db->from('items');
foreach($tags_array as $tag)
{
    $this->db->where('tag_id', $tag);
}

我注意到它只使用数组中 tag_id 的最后一个赋值。我想知道是否有任何方法可以解决这个问题。

我忘了提到我希望这也是一个“AND WHERE”子句。

谢谢!

4

2 回答 2

0
$this->db->select('id');
$this->db->from('items');
$tag_condition = array();
foreach($tags_array as $tag)
{
      $tag_condition[]   = $tag;
}

$this->db->where_in('tag_id', $tag_condition);

如何使用这个

于 2012-11-21T05:59:38.543 回答
0

像这样在您的模型中创建一个函数,并使用您的控制器将数组中的所有 tag_ids 传递给该函数......

$result = $this->model_name->function_name_in_model($tag_ids);

在模型中使用它在 where 条件下使用 in 在 sql........你会得到正确的结果。

select id from items where id IN($tag_ids);
于 2012-11-21T06:02:00.957 回答