1.20.x prefetch.inc | public DatabaseStatementPrefetch::fetchAll($fetch_style = NULL, $fetch_column = NULL, $constructor_args = NULL) |
File
- includes/
database/ prefetch.inc, line 420 - Database interface code for engines that need complete control over their result sets.
Class
- DatabaseStatementPrefetch
- An implementation of DatabaseStatementInterface that prefetches all data.
Code
public function fetchAll($fetch_style = NULL, $fetch_column = NULL, $constructor_args = NULL) {
$this->fetchStyle = isset($fetch_style) ? $fetch_style : $this->defaultFetchStyle;
$this->fetchOptions = $this->defaultFetchOptions;
if (isset($fetch_column)) {
$this->fetchOptions['column'] = $fetch_column;
}
if (isset($constructor_args)) {
$this->fetchOptions['constructor_args'] = $constructor_args;
}
$result = array();
// Traverse the array as PHP would have done.
while (isset($this->currentRow)) {
// Grab the row in the format specified above.
$result[] = $this->current();
$this->next();
}
// Reset the fetch parameters to the value stored using setFetchMode().
$this->fetchStyle = $this->defaultFetchStyle;
$this->fetchOptions = $this->defaultFetchOptions;
return $result;
}