Meiner Meinung nach sind diese Sorte Templateklassen Unsinn!
Viel sinnvoller ist z.B. soetwas:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56: | defaultfolder = 'templates';
}
/* get template */
function get_content($templatename,$parse_if_local=false)
{
if(!isset($this->templates[$templatename]))
{
if(file_exists($this->defaultfolder.'/'.$templatename.'.tpl'))
{
$this->templates[$templatename]=str_replace(""",""",implode('',file($this->defaultfolder.'/'.$templatename.'.tpl')));
}
else
{
die('Template -->'.$templatename.'<--existiert nicht');
}
}
if($parse_if_local==true && ($_SERVER[REMOTE_ADDR]=='127.0.0.1' || $_SERVER[SERVER_NAME]=="planetcoding.homeip.net" || $_SERVER[SERVER_NAME]=="boards.homeip.net"))
{
$this->templates[$templatename]=eregi_replace("(.*)","",$this->templates[$templatename]);
$this->templates[$templatename]=eregi_replace("(.*)","1",$this->templates[$templatename]);
}
elseif($parse_if_local==true && ($_SERVER[REMOTE_ADDR]!='127.0.0.1' && $_SERVER[SERVER_NAME]!="planetcoding.homeip.net" && $_SERVER[SERVER_NAME]!="boards.homeip.net"))
{
$this->templates[$templatename]=eregi_replace("(.*)","",$this->templates[$templatename]);
$this->templates[$templatename]=eregi_replace("(.*)","1",$this->templates[$templatename]);
}
return $this->templates[$templatename];
}
function get($variable,$templatename,$op='=',$parse_if_local=false)
{
return '$'.$variable.' '.$op.' " '.$this->get_content($templatename,$parse_if_local).'";';
}
/* print template */
function output($template)
{
echo $template;
}
function out($templatename)
{
return '$tpl->output("'.$this->get_content($templatename).'");';
}
}
?> |
Verwendet wird die Klasse dann z.B. so:
1:
2:
3:
4:
5:
6:
7: |
$tpl = new tpl();
eval($tpl->get("header","header"));
eval($tpl->get("footer","footer","=",true));
// ....
eval($tpl->out("index"));
|
In den Templates kann man dann nämlich ganz normale PHP Variablen verwenden
_________________
schaut mal auf
http://www.planetcoding.net vorbei
[ Diese Nachricht wurde geändert von: Adrian am 2002-08-25 17:31 ]
---
schaut mal auf
http://www.planetcoding-server.net vorbei