public function DatabaseStatementPrefetch::fetch

File

drupal/includes/database/prefetch.inc, line 352
Database interface code for engines that need complete control over their result sets. For example, SQLite will prefix some column names by the name of the table. We post-process the data, by renaming the column names using the same convention as…

Class

DatabaseStatementPrefetch
An implementation of DatabaseStatementInterface that prefetches all data.

Code

public function fetch($fetch_style = NULL, $cursor_orientation = PDO::FETCH_ORI_NEXT, $cursor_offset = NULL) {
  if (isset($this->currentRow)) {

    // Set the fetch parameter.
    $this->fetchStyle = isset($fetch_style) ? $fetch_style : $this->defaultFetchStyle;
    $this->fetchOptions = $this->defaultFetchOptions;

    // Grab the row in the format specified above.
    $return = $this
      ->current();

    // Advance the cursor.
    $this
      ->next();

    // Reset the fetch parameters to the value stored using setFetchMode().
    $this->fetchStyle = $this->defaultFetchStyle;
    $this->fetchOptions = $this->defaultFetchOptions;
    return $return;
  }
  else {
    return FALSE;
  }
}