在ZF2中如何在WHERE子句中执行OR条件

vim*_*083 6 php zend-framework2

在我的模型中:

$rowset = $this->tableGateway->select(array('username' => $identifier));
$row = $rowset->current();
return $row;
Run Code Online (Sandbox Code Playgroud)

它执行以下查询:

SELECT * FROM member WHERE username='<< ENTERED VALUE >>'; 
Run Code Online (Sandbox Code Playgroud)

但我想执行以下查询:

SELECT * FROM member WHERE username='<< ENTERED VALUE >>' OR id_customer='<< ENTERED VALUE >>'; 
Run Code Online (Sandbox Code Playgroud)

我必须在模型文件中进行哪些更改?

请建议有用的博客.我无法在ZF2文档中找到答案.

Tim*_*e A 4

最简单的方法是使用explicit 关键字OR

$where = new Zend\Db\Sql\Where;
$where->equalTo( 'username', $identifier );
$where->OR->equalTo( 'id_customer', $customerId );

$rowset = $this->tableGateway->select( $where );
$row = $rowset->current();
return $row;
Run Code Online (Sandbox Code Playgroud)