Hallo zusammen,
habe mir aus verschiedenen Tutorials ein “Template-System” zusammen gebaut.
Ich habe ein Template darauf etwas angepasst, doch es gibt jetzt schon bereits einen Fehler. Der browser bekommt keinen quelltext. Errorreporting ist auf E_ALL.
Hier mal die Class:
[code]<?php
class Template
{
protected $_template;
protected $_vars;
public function __construct($template)
{
$this->setFile($template);
}
public function assign($var, $value)
{
if(isset($this->_vars[$var]))
{
throw new InvalidArgumentException('Variable has already been set');
}
$this->_vars[$var] = $value;
}
public function render()
{
ob_start();
include_once($this->_template);
$data = ob_get_clean();
return $data;
}
public function setFile($template)
{
if(!file_exists($template) || !is_readable($template))
{
throw new InvalidArgumentException(“Template file {$template} not found”);
return false;
}
$this->_template = $template;
return true;
}
public function __get($var)
{
return isset($this->_vars[$var]) ? $this->_vars[$var] : '';
}
}
?>[/code]
Dann die index.php von der die seiten aufgerufen werden:
require_once 'class/class.Template.php';
error_reporting(E_ALL);
ini_set('display_errors', 1);
[...]
$tpl = new Template($page.'.html');
$tpl->assign('pages', $pages);
$tpl->assign('title', ucfirst($page));
$tpl->assign('current', $page.'.html');
$tpl->assign('user', $user);
echo $tpl->render();
Und das (teilweise) angepasste Template ist da: henry-hilft.de/html/index.html
Ich finde einfach den fehler nicht… Schonmal vielen dank für eure Hilfe.