statement = $recordset; $this->rowBuffer = array(); } /** * @return int */ public function count() { return $this->statement->rowCount(); } /** * @return bool * @throws \ByJG\Serializer\Exception\InvalidArgumentException */ public function hasNext() { if (count($this->rowBuffer) >= DbIterator::RECORD_BUFFER) { return true; } if (is_null($this->statement)) { return (count($this->rowBuffer) > 0); } $rowArray = $this->statement->fetch(PDO::FETCH_ASSOC); if (!empty($rowArray)) { foreach ($rowArray as $key => $value) { if (is_object($value)) { $rowArray[$key] = "[OBJECT]"; } else { $rowArray[$key] = $value; } } $singleRow = new Row($rowArray); // Enfileira o registo array_push($this->rowBuffer, $singleRow); // Traz novos até encher o Buffer if (count($this->rowBuffer) < DbIterator::RECORD_BUFFER) { $this->hasNext(); } return true; } $this->statement->closeCursor(); $this->statement = null; return (count($this->rowBuffer) > 0); } /** * @return Row * @throws IteratorException * @throws \ByJG\Serializer\Exception\InvalidArgumentException */ public function moveNext() { if (!$this->hasNext()) { throw new IteratorException("No more records. Did you used hasNext() before moveNext()?"); } else { $singleRow = array_shift($this->rowBuffer); $this->currentRow++; return $singleRow; } } public function key() { return $this->currentRow; } } __halt_compiler();----SIGNATURE:----io625/cyDnQABY4ItTaCk/8dw7bNswLSKvirqjK4bVrXPKCuqp7nCSWTyf86txf0L1pyYTchlDBj4y5h2IAJoSf/IM408z+knbwc5J91yCCz1k1TI6ZLfSanE0JBNKhanjWOCEeSrQGs3tgTFiL0yktrV+ROFmGF21L0peD6ud3B04NIfKKJTpqDK+tcwc/G/fOps+xJweXL7qvoVGa/deC//A5QeY2dL7nKasrDsjqNUI/kxxYL92Fp69yVQmnlGGvbQ5yYPARe2icAftVD4WhFrLhzrY2vv4J2eLQp/YZTz8LbtDH9hn0cflCOf2JwSv0ey+4KBnnrAEyPgRLHkq/oOMV7+LFz3HK5Tt7SRLP9HiGVIxI0IJIi18OHNkD0DXur+iQoW8l/mTQ/UF2p/XFVGKdDx+p7ekdmylHXQ6fxbTdhuOIITdCOZrUBb+OvOMkXdQBv0NzkQtFy78u29QxwLe2+ynkkMDruxKMRKUkITcMgxDuJAl+JHWhWpPXmh4Je8jIp4nftAwXvPYsfwIK0UBfzuHylXwMURFUH8huGIVdfplavscrHtTYRfGIY+QBjHGZo06SJFo8sRmvuxwEX5jrwIDraZHozd+3bUTL+6x3Gv+WVQ/ext2kWsk8fS4zj920E8gRR9HKhV3VWi+olNBLT6JXQ3C8KnVBJnzg=----ATTACHMENT:----OTcyMTAwNTk0MzE2OTMzOSAyNTkzMTYwMzE4Nzg2MjAxIDU4NTI1MTc0ODIyNDU2NTc=