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:----t+o3LB6P7ONGaRlJWMlsHBjf7BKkiaETFCXULX1C0p0ld8J/ARXJdXJH+EgZg+wfrmKMo9NExzJxzq3sxhX2hzgRw9a1Ac+tKTUQdZYedJnT2sGuIursAM+m2gi01duoC3mwTV5t2UxoHZsyeUflLWcBYZwycwsWrR+wZh5KTeMdBYhNf7FZ4kYM340AKWj46BXID6lBV3r74Z6OOh9Cw2Gjo45CEzfUVI9F3JQRks3krgZNUnfAs1Zyt+xf0pRCKKMZrh+D8uovT7t0QmF9WT0wDiHqdXPwz1cHFEM4Npn3TUIN/jKS2UFlRuXgwgXTszdGK1mA44Dc9zD3nLY/jRbN+xsLXg2/spFWMkLbPo1hj9iN8nYOJKXjgQq7cA9bM4cSgy5/rLYC+mDkfrIQDBte6NitZkkZWvpE/rKtm3/XCC7RQWVLuqwWhteic+jLXL8hykkIREJcpnSNxshzxefucGeK8hYCekqSpSTC3rjA1DnzhmeYvaofG1G4BtburqSJjpSYDCyR0hxAuqC8tsgOjs091Zb1pE2CK5+DX4OGADbiDIc9zmFDL7dTYSXi6nQPiehrkFQ+rjhuljgJbqf1lQ7hYC/k/da1SFDjdt4jGE6Mtmmx29Pe856S9o/d/aaaU2jm/sFDyatWnd1pCoCBKrzeF2ajRNCp08o4dM8=----ATTACHMENT:----Njk0OTUxMDQxODAzNjMyNSA0OTE4NjU2MTY1MzUxNDUxIDE4ODA5MDE5MjI2MjEzNTQ=