Реализуем метод обработки шаблонов.
public function render( $template, array $vars = null, $key = null )
{
if (is_array($vars)) {
$this->vars = $vars += $this->vars;
}
ob_start();
if (is_file($this->config['dir'] . '/' . $template . '.' . $this->config['ext'])) {
include $this->config['dir'] . '/' . $template . '.' . $this->config['ext'];
if (is_null($key)) {
return ob_get_clean();
}
$this->$key = ob_get_clean();
return $this;
}
throw new Exception("Template file '{$template}' not found.");
}Что тут просиходит:
первым, обязательным аргументом, мы передаём имя шаблона,
второй, не обязательный аргумент - массив переменных шаблона которые мы можем передать напрямую,
и третий, не обязательный аргумент - имя переменной шаблона в которую будит "собран" результат обработки (удобство этой фичи будит продемонстрировано позже).