在cakephp3中使用find()

时间:2015-11-17 07:21:24

标签: sql cakephp datasource cakephp-3.0

如何使用find()执行查询,例如:

select * from table1 
where status =1 and (title like '%keyword%' OR content like '%keyword%');

在cakephp 3中

1 个答案:

答案 0 :(得分:2)

通过使用函数作为getSomethingByUserIDorWhere()的参数,您可以将条件与表达式对象一起组合:

andWhere()

或者您只需使用以下代码

即可
$query = $table1->find()
        ->where(['status' => 1])
        ->andWhere(function ($exp) {
            return $exp->or_([
                'title LIKE' => '%keyword%',
                'content LIKE' => '%keyword%'
            ]);
 });

有关详细信息,请参阅link