我很难为ZF2创建params数组,我可以在其中执行where /或
我知道或者从ZF2开始已经删除但是有一些我无法工作的解决方法:
use Zend\Db\Sql\Predicate;
$params = array(
'select' => implode(', ', array(
'`user`.`id`',
'`user`.`username`',
'`user`.`firstname`',
'`user`.`middlename`',
'`user`.`lastname`',
'`user`.`externalEmail`',
'`user`.`email`',
)),
"where" => implode(
new Predicate\PredicateSet(
array(
new Predicate\Like( '`user`.`email` = :email'),
new Predicate\Like( '`user`.`email2` = :email'),
),
Predicate\PredicateSet::COMBINED_BY_OR
)
), ...
我认为这是todo的方式,但似乎没有。
答案 0 :(得分:3)
您可以使用NEST
特殊属性进行复杂查询:
use \Zend\Db\Sql\Where;
use \Zend\Db\Sql\Select;
$select = new Select();
$select->from('user');
$where = new Where();
$where->NEST
->equalTo('email', $email)
->OR
->equalTo('email2', $email)
->UNNEST;
$select->where($where);