我试图弄清楚如何在 where 子句中使用 OR 来制作 Mysql Select。默认情况下,where 语句中的所有子句都是 ANDed,并且经过几个小时的尝试和失败,并且查看网络无法使其工作。在 ZF1 中它将是一个 orWhere() 但在 ZF2 中没有。
这是我在里面的代码AbstracttableGateway
:
$resultSet = $this->select(function (Select $select) use ($searchstring) {
$select->join('users','blog_posts.id_user = users.id',array('name'))
->join('blog_categories','blog_posts.id_category = blog_categories.id', array(
'cat_name' => 'name',
'cat_alias' => 'alias',
'cat_image' => 'icon'))
->order('date DESC');
//->where("title LIKE '%" .$searchstring . "%' OR content LIKE '%". $searchstring ."%'")
$select->where->like('content','%'.$searchstring.'%');
$select->where->like('title','%'.$searchstring.'%');
}
);
return $resultSet;
带有 的行$select->where->like
是 ANDed 的行,我希望它们带有 OR。我应该改变什么?