You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
896 B
45 lines
896 B
<?php namespace Majestic\Model;
|
|
|
|
class SqlResultCollection extends \ArrayIterator implements iSqlResultItems
|
|
{
|
|
private $items;
|
|
|
|
public function __construct($items)
|
|
{
|
|
$this->items = $items;
|
|
foreach ($items as $item) {
|
|
parent::append($item);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @return DbStatement[]
|
|
*/
|
|
public function fetchAll()
|
|
{
|
|
return (array) $this;
|
|
}
|
|
|
|
/**
|
|
* @param $field
|
|
* @return mixed
|
|
*/
|
|
public function fetchField($field)
|
|
{
|
|
$item = $this->offsetGet(0);
|
|
return $item->{$field};
|
|
}
|
|
|
|
/**
|
|
* @return mixed
|
|
*/
|
|
public function fetch()
|
|
{
|
|
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);
|
|
}
|
|
}
|