<?php class template{ private $file; public $tpl; public $vars; public $queries; public function __construct($file){ $this->file = $file; } public function put($var_name,$var_value){ $this->vars[$var_name] = $var_value; } public function getVar($var_name){ return $this->vars[$var_name]; } public function parse(){ } } ?>
mam taką klasę (jak powyżej)- w sumie to jest dopiero początek klasy. Problem tkwi w tym, ęe preg_replace nie podminenia mi zmiennych z obiektu utworzonego z tej klasy na tekst znajdujący się pomiędzy znacznikami template w tym oto templaku:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" /> </head> <body> <template action="loop">nazwa</template> <template action="show">nazwa2</template> </body> </html>
Kod który tworzy obiekt i dodaje zmienne:
<?php require_once("template.class.php"); $tpl = new template("tpls/file.tpl"); $tpl->put("nazwa","moja nazwa"); $tpl->put("nazwa2","moja nazwa2"); $tpl->parse(); ?>
Jakieś idee?
P.S. nie patrzcie na te błędne slashe forum je samo dodało
Ktokolwiek może pomóc?