从select结果集中删除一行

时间:2013-09-17 22:15:33

标签: codeigniter activerecord

所以这是我的代码,很明显是什么?

$resultset = $this->m_model->getDetails();

foreach($resultset->result() as $k=>$v )
{
   if($v->condition) 
   unset($resultset->result[$k]) ;
}
显然

   unset($resultset->result[$k]) ;

不起作用...如何从结果集中删除?

2 个答案:

答案 0 :(得分:1)

试试这个:

$resultset = $this->m_model->getDetails();
$result=$resultset->result();
foreach( $result as $k=>$v )
{
   if($v->condition) 
   unset($result[$k]) ;
}

答案 1 :(得分:1)

玩FaceOfJock的answer,试试这个:

$resultset = $this->m_model->getDetails();
$result = $resultset->result();

foreach($result as $k=>$v)
{
   if($v->condition) 
   unset($result[$k]);
}

$resultset->result() = (object) $result;

<击>

在进一步研究之后,我不认为你想做的事情是可能的。但是,更好的解决方案可能是从您的模型中控制它。您可以使用CI的活动记录,如:

$this->db->where('some_column !=', 'some_value');