在 Zend 应用程序中,我使用Zend\Db\TableGateway
和Zend\Db\Sql
从 MySQL 数据库中检索数据数据,如下所示。
模型 -
public function getCandidateEduQualifications($id)
{
$id = (int) $id;
$rowset = $this->tableGateway->select(function (Sql\Select $select) use ($id)
{
$select->where
->AND->NEST->equalTo('candidate_id', $id)
->AND->equalTo('qualification_category', 'Educational');
});
return $rowset;
}
看法 -
我只是迭代 $rowset 并在视图中回显。但是当尝试回显两次或更多次时会出错。单次迭代有效。
这个结果是只向前的结果集,不支持向前移动后调用rewind()
我可以通过将其加载到视图中的另一个数组来解决它。但这是最好的方法吗?有没有其他方法来处理这个?
$records = array();
foreach ($edu_qualifications as $result) {
$records[] = $result;
}
编辑 -
$resultSet->buffer();
解决了这个问题。