vorab: das ganze hat nichts mit ilch zu tun!
wie einige vielleicht wissen bin ich grad dabei mein eigenes cms zu schreiben. ich hab eben mein eigenes template system fertig geschrieben für die einzelnen content teile wie news, kontakt etc.
gleichzeitig struktirier ich grad die funktionen ein bisschen um.
jetzt mein problem:
ich hab jetzt die funktion monate($num) , die die zahl des monates ausgeschrieben in deutsch umwandelt. wenn ich das ganze bei meinen news einfüge sieht das so aus:
<?php $datum = $row["Datum"]; $day = date('d', $datum); $mon = date('n', $datum); $yea = date('Y', $datum); $date = $day.'. '.monate($mon).' '.$yea; ?>
hier mal die funktion:
<?php function monate($num) { $monate = array(1=>"Januar", 2=>"Februar", 3=>"März", 4=>"April", 5=>"Mai", 6=>"Juni", 7=>"Juli", 8=>"August", 9=>"September", 10=>"Oktober", 11=>"November", 12=>"Dezember"); echo $monate[$num]; } ?>
hier mal mein template sytem
<?php class template { var $tmp_file; // Pfad zur Template Datei var $error; // Fehlermeldung var $content; // Inhalt des Templates function template($file, $error = "Template Datei nicht gefunden!") { $this->tmp_file = $file; $this->error = $error; $this->content = ""; } function readtemplate() { $file = @fopen($this->tmp_file, "r"); if(!$file) { echo $this->error; } else { while(!feof($file)) { $temp = fgets($file, 4096); $this->content .= $temp; } } } function replace($title, $value) { $this->content = str_replace("{" . $title . "}", $value, $this->content); } function parse() { echo $this->content; } } ?>
und so sieht das ganze z.b in der news.php aus:
<?php $tpl = new template("content/tpl/news_comments.htm"); $tpl->readtemplate(); $tpl->replace("ID", $id); $tpl->replace("TITEL", $titel); $tpl->replace("DATUM", $date); $tpl->replace("AUTOR", $autor); $tpl->replace("TEXT", $text); $tpl->parse(); ?>
das ganze funktioniert soweit perfekt. allerdings wird der monat nicht an der richtigen stelle ausgegeben (also zwischen tag und jahr) - sondern ganz oben vom content ... wieso?!
danke erstmal fürs durchlesen ^^
gruß sonic