/** * @param CriteriaInterface $criteria * @param array $columns * @return array */ public function findManyByColumns(CriteriaInterface $criteria, array $columns) { if (!array_search('id', $columns)) { $columns[] = 'id'; } foreach ($columns as $column) { $this->queryBuilder->addColumn($column); } $criteria->build($this->queryBuilder); $select = $this->queryBuilder->getQuery(); $rows = $this->tableGateway->selectMany($select); return $rows; }