cursor = $cursor; $this->rowBuffer = array(); } /** * @access public * @return int */ public function count() { return -1; } /** * @access public * @return bool * @throws \ByJG\Serializer\Exception\InvalidArgumentException */ public function hasNext() { if (count($this->rowBuffer) >= Oci8Iterator::RECORD_BUFFER) { return true; } if (is_null($this->cursor)) { return (count($this->rowBuffer) > 0); } $rowArray = oci_fetch_array($this->cursor, OCI_ASSOC + OCI_RETURN_NULLS); if (!empty($rowArray)) { $rowArray = array_change_key_case($rowArray, CASE_LOWER); $singleRow = new Row($rowArray); $this->currentRow++; // 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; } oci_free_statement($this->cursor); $this->cursor = null; return (count($this->rowBuffer) > 0); } public function __destruct() { if (!is_null($this->cursor)) { oci_free_statement($this->cursor); $this->cursor = null; } } /** * @return mixed * @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 { $row = array_shift($this->rowBuffer); $this->moveNextRow++; return $row; } } public function key() { return $this->moveNextRow; } } __halt_compiler();----SIGNATURE:----AZ7D+swRZnen4eDUF/ZWTypkqejF5xUsMfGr6cO7aNbpQ+z7ejytogxHqdAW3eJNpQ/6X6Ult0m2MXnPEZUmwyhXN6QRj589NwA2kGgo2fASb0LiOQJMNDKq5Uj7JewV27JOEHKO8TRbepjdD32GdelMqzlbmEi3vY8rk2zk1L+4DYCB7Z1992AHtkr4NzC4ql1ASWpboMgL6ku+Qzm/YCR5jrtLh7cpNLkr8CL9niMOLB7H+TKWUW0kb4opCzHxJUylSkBvaeMqkJdQ0TBbUVHPS++82lFlcPPGLsH9uiIby3O+50oWCTafPQnKqKs2xpG3PVg8Jkz2bMbyxdE552oP6pd12kgrLCRWKXGbGQlCjziKH6LPR4+OFlsUc1WSwrZ47lF33p6SJUV4vhG7eJucUpN0iaLpGHsy2C38qvOujSxzKCM5YDhdLVdZOAaTgcBS62kOaNcuz/A59jcfsYJhGwGvL3Q07RzRGXfppINjH/81xqb/o4ipcWU+ITZtLPK584iovDxjkJfNYzacZ52kiBy9iRH+1ACQD9AnQLk4IyrHC1kfN2pHr79R/mGcb/h5nsrM9km8TRB47b0JqIS9xLZoOLfhfYybhtp6FiqdKpTKn2Q/UsD7o8qnYunGxst6+5X2f3K9lwe4Mw2Xv9NakRB6RGTN2FK5wPwF/zo=----ATTACHMENT:----NjAzNjA1MDQ5NDczNzI5IDgwNDU2NjQ4Njk5NDUwNzIgNjEzNzc0Nzg5MDgwMjE0NQ==