function StatementPrefetch::fetchAllAssoc

Same name in other branches
  1. 9 core/lib/Drupal/Core/Database/StatementPrefetch.php \Drupal\Core\Database\StatementPrefetch::fetchAllAssoc()
  2. 8.9.x core/lib/Drupal/Core/Database/StatementPrefetch.php \Drupal\Core\Database\StatementPrefetch::fetchAllAssoc()

Overrides StatementInterface::fetchAllAssoc

File

core/lib/Drupal/Core/Database/StatementPrefetch.php, line 583

Class

StatementPrefetch
An implementation of StatementInterface that pre-fetches all data.

Namespace

Drupal\Core\Database

Code

public function fetchAllAssoc($key, $fetch_style = NULL) {
    $this->fetchStyle = $fetch_style ?? $this->defaultFetchStyle;
    $this->fetchOptions = $this->defaultFetchOptions;
    $result = [];
    // Traverse the array as PHP would have done.
    while (isset($this->currentRow)) {
        // Grab the row in its raw \PDO::FETCH_ASSOC format.
        $result_row = $this->current();
        $result[$this->currentRow[$key]] = $result_row;
        $this->next();
    }
    // Reset the fetch parameters to the value stored using setFetchMode().
    $this->fetchStyle = $this->defaultFetchStyle;
    $this->fetchOptions = $this->defaultFetchOptions;
    return $result;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.