Eigenes Template suche jemanden der logisch denken kann

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Eigenes Template suche jemanden der logisch denken kann

Beitrag von witzigerkiller »

Hi @ all..

Ich bastel gerade an diesem naja, Template System...

Code: Alles auswählen

<?PHP

class tpl
{
  // Pfad zu den Templates
  $templates_dir = "templates/";
  
  $name = array();
  // Function zum hinzuf&uuml;gen der w&ouml;rter
  function assign($name, $data)
  {
    array_push($name($data));
  }
  
  // Function zur Ausgabe des Templates
  function display($template)
  {    
    if (file_exists($templates_dir.$template))
    {
      // Inhalt der Dati holen
      $display_template = file_get_contents($templates_dir.$template);
    }
    else
    {
      // Fehlermeldung ausgeben
      die("<b>ERROR:<b> Die Template Datei: <b>".$template."</b> im 
      Ordner ".$templates_dir." ist nicht vorhanden oder konnte nicht gefunden worden.");
    }
  }
}

?>
Was ich eigentlich suche ist hilfe beim umseten der ersetzung der {lala} mit der jeweiligen variable...

ich denke ich muss da irgendwie suchen nach {lala} ersetzen mit $lala

und das bei jedem.... Kann mir da evtl. jemand einen regulären ausdruck schreiben oder mir sagen wie ich das handhaben muss?

Danke

EDIT: ALso um genau zusein, habe ich leider keinen blassen schimmer wie ich das umsetzen muss mit der ersetzung...
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

hab mal nachgedacht.. wenn ich die {lala} mit

str_replace("{","$",$datei); mache, dann wäre irgendwie die funktion assign sinnlos... aber ich denke das man das vllt mit einer schleife von foreach machen muss, oderso...

Aber ich weis net genau wie, ich häng hier gerade richtig dumm rum. :cry:

Bye
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
hagily
Mitglied
Beiträge: 1139
Registriert: 25.08.2005 22:05
Wohnort: Schweinfurt
Kontaktdaten:

Beitrag von hagily »

Was hast du eigenldich vor?

willst du in einer .tpl datei Variablen die wie dein {lala} aussehen in einer .php datei definieren?
Felix
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

naja, ich will ein tpl system basteln....

nehmen wir an ich will im template hallo ausgeben, dazu diehnt die funktion assign:::: tpl->assign("WIllkommen","Hallo");

nun soll das so in der tpl aussehen {WIllkommen} und beim parsen durch Hallo ersetz werden..
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Warum nimmst du nicht einfach ein fertiges Template-System? Wenn du schon bei den Grundlagen scheiterst, wird deins wohl kaum besser werden.
KB:knigge
Benutzeravatar
Spezial
Mitglied
Beiträge: 135
Registriert: 15.07.2004 08:53
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von Spezial »

Also ne while oder for-schleife wäre ganz praktisch um das assign-array auszulesen...
dann müsste aber das assign so aussehen:
assign(
'WILLKOMMEN' => 'Willkommen',
'TEXT_1' => 'Hier steht Text 1'
);
usw. so is das bei bb...oder bei den meisten anderen Tpl-Systemen.
Aber der Code den du da hast...der macht noch nicht viel...
Aber wenn es das mit dem str_replace ist, was du suchst...da wäre ne preg-funktion besser, aber mit denen kenne ich mich net so aus, sry ;)

Gruß,
Tobi
Wenn Chuck Norris ins Wasser fällt, wird er nicht nass…aber das Wasser wird Chuck Norris.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

naja, ich nehme schon smarty, aber ich will halt einfach lernen wie man sowas macht, damit ich diese classen auch besser verstehe...
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
hagily
Mitglied
Beiträge: 1139
Registriert: 25.08.2005 22:05
Wohnort: Schweinfurt
Kontaktdaten:

Beitrag von hagily »

versuch einfach mal die template.php nachzuvollziehen und du kannst es.

felix
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Das PHP-Handbuch ist übrigens sehr hilfreich - z.B. der Abschnitt über Reguläre Ausdrücke
KB:knigge
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

die blick ich aber net....naja, ich bleibe dann doch lieber beim smarty....
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Antworten

Zurück zu „Coding & Technik“