function render($template)
{
ob_start();
include 'needed/functions/list.php';
include $file;
return ob_get_clean();
}
class Collection extends ArrayIterator
{
protected $_className = 'myClass';
protected $_data = array();
// отдаем весь полученный из бд массив данных
public function __construct( $allData )
{
$this->_data = $allData;
}
// проверяем нужный ключ и возвращаем нужный обьект
public function offsetGet( $offset )
{
$obj = new $this->_className($this->_data[$offset]);
return $obj;
}
// можно и добавлять данные
public function offsetSet( $offset, $value )
{
$this->_data[$offset] = $value;
return $this;
}
}
$data = Db_user::fetchAll();
$collection = new Collection($data);
$user = $collection[0]; // получаем экземпляр класса 'myClass' из 0 строки массива
$collection[1] = array(1,2,3); // записываем во вторую строку новые данные
// при получении опять же вернется обьект нужный
$user->someMethod();