Skip to content
Snippets Groups Projects
Commit 9332e835 authored by Dries Buytaert's avatar Dries Buytaert
Browse files

- Patch #742042 by kkaefer:DBTNG: ->fetchAllAssoc() doesn't respect fetch mode...

- Patch #742042 by kkaefer:DBTNG: ->fetchAllAssoc() doesn't respect fetch mode set during ->execute().
parent 5f98fb81
Branches
Tags
2 merge requests!7452Issue #1797438. HTML5 validation is preventing form submit and not fully...,!789Issue #3210310: Adjust Database API to remove deprecated Drupal 9 code in Drupal 10
......@@ -1916,12 +1916,13 @@ public function fetchAllKeyed($key_index = 0, $value_index = 1);
* @param $fetch
* The fetchmode to use. If set to PDO::FETCH_ASSOC, PDO::FETCH_NUM, or
* PDO::FETCH_BOTH the returned value with be an array of arrays. For any
* other value it will be an array of objects.
* other value it will be an array of objects. By default, the fetch mode
* set for the query will be used.
*
* @return
* An associative array.
*/
public function fetchAllAssoc($key, $fetch = PDO::FETCH_OBJ);
public function fetchAllAssoc($key, $fetch = NULL);
}
/**
......@@ -1987,19 +1988,22 @@ public function fetchCol($index = 0) {
return $this->fetchAll(PDO::FETCH_COLUMN, $index);
}
public function fetchAllAssoc($key, $fetch = PDO::FETCH_OBJ) {
public function fetchAllAssoc($key, $fetch = NULL) {
$return = array();
if (isset($fetch)) {
if (is_string($fetch)) {
$this->setFetchMode(PDO::FETCH_CLASS, $fetch);
}
else {
$this->setFetchMode($fetch);
if (in_array($fetch, array(PDO::FETCH_ASSOC, PDO::FETCH_NUM, PDO::FETCH_BOTH))) {
foreach ($this as $record) {
$return[$record[$key]] = $record;
}
}
else {
foreach ($this as $record) {
$return[$record->$key] = $record;
}
$record_key = is_object($record) ? $record->$key : $record[$key];
$return[$record_key] = $record;
}
return $return;
}
......@@ -2080,7 +2084,7 @@ public function fetchAllKeyed($key_index = 0, $value_index = 1) {
return array();
}
public function fetchAllAssoc($key, $fetch = PDO::FETCH_OBJ) {
public function fetchAllAssoc($key, $fetch = NULL) {
return array();
}
......
......@@ -475,8 +475,8 @@ public function fetchAllKeyed($key_index = 0, $value_index = 1) {
return $result;
}
public function fetchAllAssoc($key, $fetch_style = PDO::FETCH_OBJ) {
$this->fetchStyle = $fetch_style;
public function fetchAllAssoc($key, $fetch_style = NULL) {
$this->fetchStyle = isset($fetch_style) ? $fetch_style : $this->defaultFetchStyle;
$this->fetchOptions = $this->defaultFetchOptions;
$result = array();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment