我是zend框架2中的新人。 我尝试使用zend db但是我遇到了一个问题:
Ex:我有一个表用户
1 | email1 | passwod1
2 | email2 | passwod2
3 | email3 | passwod3
4 | email4 | passwod4
现在我想获得ID为2的'only'密码(SELECT'password'FROM users WHERE id = 2)。 我该怎么办?
答案 0 :(得分:1)
在你的模型中尝试这个(UserTable类):
$select = new \Zend\Db\Sql\Select('users');
$select->where(array('id'=>2));
$select->columns(array('password'));
$resultSet = $this->tableGateway->selectWith ( $select );
$yourRow = $resultSet->current();
请参阅Reference
答案 1 :(得分:0)
您可以编写手动查询并执行如下操作,因为您必须使用TableGateway(我希望您使用TableGateway来操作表数据):
$sql="SELECT 'password' FROM users WHERE id = 2"; // Make sure your query will not raise any error.
$resultSet = $this->tableGateway->adapter->query($sql, \Zend\Db\Adapter\Adapter::QUERY_MODE_EXECUTE);
return $resultSet;