Witam

Od jakiegoś czasu opracowuję sobie prostą klasę templatów, która wykorzystuję na swoich stronach. Na smarty jest dla mnie jeszcze za wcześnie, zresztą nie lubię takich wielkich 'krów' w małych projektach

. Niestety w programowaniu obiektowym nie mam jeszcze żadnego doświadczenia, więc zapewne ta klasa wiele wspólngo z OOP nie ma... Tak więc proszę o ogólną koncepcję - jak to powinno być zbudowane właściwie, oraz ewentualne uwagi co poprawić/dorobić w klasie, bo aktualnie nie ma ona prawie żadnych możliwości...
Kod nie mieścił się w poście:
http://77.88.178.156/priv/Jakby ktoś chciał wypróbować, przykład zastosowania:
<?php
include('templates_class.php');
$tpl = new templates('templates/','.tpl',1,2,0);
$data = array(array('Pierwszy element', 'drugie pole', 'cos innego'), array('Drugi element', 'cos innego', 'cos innego'));
$tpl->setvar('title','Spis elementów z tablicy');
for ($i=0; $i<count($data); $i++) {
$tpl->setvar('data',$data[$i]);
$tpl->to_buffer('rows','test','row');
}
$tpl->display('test','index');
?>
templates/test.tpl
<!-- BEGIN index -->
{#INC:#this/header}
{#BUF:rows}
<!-- END index -->
<!-- BEGIN header -->
<!-- END header -->
<!-- BEGIN row -->
<!-- END row -->
...wbrew pozorom tutaj nie ma żadnego cache, ta tablica tak nazwana jest tylko po to, żeby nie wczytywać jednego pliku 10 razy do takiego samego bloku

Brak instrukcji warunkowych i pętli bo... nie wiem jak to ma wyglądać? Przecież w końcu po to są szablony, żeby nie umieszczać logiki pomiędzy styl?
Tak więc proszę o uwagi i pozdrawiam
Dodałem link do kodu ze swojego serwera, bo ten wyżej jak widzę padł albo usunął kod...
http://77.88.178.156/priv/btw, nie oczekuję nie wiem jakiej odpowiedzi, chociaż wskazówkę jak to zrobić poprawnie w OOP