zf2结合两个或多个谓词

时间:2016-08-10 10:52:34

标签: php zend-framework where


我有一个Zend \ Db \ Sql \在哪里看起来像这样:

$where->nest()->like()->and->like()->unnest()->or->equalTo();

然后我想再添加一个这样的谓词:

$where->and->greaterThan()...

但问题是'和'在上面的行不适用于整个cluase。结果是:

(like and like) OR equalTo AND greaterThan

但我想要的是:

( (like and like) OR equal ) AND greaterThan

我该怎么做?

提前致谢。

1 个答案:

答案 0 :(得分:1)

你必须双巢。在最后一个例子中,你有两个开括号。这是一个双巢;)

$where->->nest()->nest()->like()->and->like()->unnest()->or->equalTo();

并且

$where->unnest()->and->greaterThan()...

你应该没事。