Add assoc method into SqlResultCollection
This commit is contained in:
@ -37,4 +37,9 @@ class SqlResultCollection extends \ArrayIterator implements iSqlResultItems
|
|||||||
{
|
{
|
||||||
return $this->offsetGet(0);
|
return $this->offsetGet(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function assoc($field, $assoc_as_array = false) {
|
||||||
|
$sql_result_provider = new SqlResultProvider($this->items);
|
||||||
|
return $sql_result_provider->assoc($field, $assoc_as_array);
|
||||||
|
}
|
||||||
}
|
}
|
@ -19,7 +19,7 @@ class SqlResultProvider implements iSqlResultItems
|
|||||||
private $result_items_base;
|
private $result_items_base;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $result DbStatement
|
* @param $result DbStatement|array
|
||||||
*/
|
*/
|
||||||
public function __construct($result)
|
public function __construct($result)
|
||||||
{
|
{
|
||||||
@ -29,8 +29,12 @@ class SqlResultProvider implements iSqlResultItems
|
|||||||
private function defineResultItems()
|
private function defineResultItems()
|
||||||
{
|
{
|
||||||
if (is_null($this->result_items_base)) {
|
if (is_null($this->result_items_base)) {
|
||||||
$this->result_items_base = $this->result->fetchAll();
|
if (is_array($this->result)) {
|
||||||
$this->result_items = $this->result_items_base;
|
$this->result_items_base = $this->result;
|
||||||
|
} else {
|
||||||
|
$this->result_items_base = $this->result->fetchAll();
|
||||||
|
}
|
||||||
|
$this->result_items = $this->result_items_base;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user