Template Klasse

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Template Klasse

    Hallo,
    ich will versuchen eine kleine und einfache Template Klasse zu erstellen.

    Ich will vorerst nicht allen möglichen SchnickSchnack, sondern einfach nur eine auf PHP5 basierende Klasse, mit der ich Platzhalter in einem HTML Template ersetzen kann. Also so Dinge wie Schleifen u.ä. brauche ich derzeit nicht, weil ich vorerst dabei bin ein Gästebuch zu erstellen, bei dem die Oberfläche einfach zu verwalten ist. Das Gästebuch ist eigentlich schon so gut wie fertig, nur weiß ich nicht, wie das mit den Platzhaltern umzusetzen ist, weil ich noch ziemlicher Newbie bin.

    Hier gibt es zwar schon einige Beispieltemplateklassen im Forum, aber diese sind ja schon mit mehr Funktion, als ich ess brauche und auch nicht besonders einfach zu verstehen.
    Vielleicht habt ihr mir auch einfach nur einen Link zu einem Tutorial...aber ich bin über jede Hilfe froh.

    MfG Matze!

  • #2
    vielleicht hilft dir dieser einfache schnipsel

    PHP-Code:
    <?php

    class parser{

        var 
    $replace = array();
        var 
    $search = array();
        var 
    $content "";
        
        function 
    add($search,$replace){
            
    $this->search[$search] = $search;
            
    $this->replace[$search] = $replace;
        }
        
        function 
    doc($doc){
            
    $this->content file_get_contents($doc);
        }
        
        function 
    display(){
            echo 
    str_replace(
                
    $this->search,
                
    $this->replace,
                
    $this->content
                
    );
        }
        
    }

    $p = new parser();

    $p->doc("test.htm");

    $p->add("[titel]","parser test");
    $p->add("[test]","test 1 2 3");

    $p->display();
    ?>
    und die test.htm

    PHP-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
    <
    html>
    <
    head>
           <
    title>[titel]</title>
    </
    head>
    <
    body>
    [
    test]
    </
    body>
    </
    html
    viel spass beim basteln
    mfg

    Kommentar


    • #3
      Und bei deinem Gästebuch werden doch bestimmt mehrere Einträge auf einmal angezeigt werden, oder?
      Code:
      Eintrag 1
          Titel
          Datum
          Text
      
      Eintrag 2
          Titel
          Datum
          Text
      
      Eintrag 3
          Titel
          Datum
          Text
      usw. Und genau dann kommen in der Regel Schleifen zum Einsatz.
      Nieder mit der Camel Case-Konvention

      Kommentar


      • #4
        Original geschrieben von Griecherus
        Und bei deinem Gästebuch werden doch bestimmt mehrere Einträge auf einmal angezeigt werden, oder?
        Code:
        Eintrag 1
            Titel
            Datum
            Text
        
        Eintrag 2
            Titel
            Datum
            Text
        
        Eintrag 3
            Titel
            Datum
            Text
        usw. Und genau dann kommen in der Regel Schleifen zum Einsatz.
        Das habe ich ganz großzügig übersehen
        Naja, aber mühsam nährt sich das Eichhörnchen...
        Also schon mal vielen Dank für den Code-Schnipsel!

        MfG Matze!

        Kommentar


        • #5
          Original geschrieben von matze110684
          Also schon mal vielen Dank für den Code-Schnipsel
          schonmal? mehr als str_replace ist in diesem fall nicht zu machen, falls du jetzt mehr erwartest.

          OffTopic:
          @Griecherus, hast du dein templatesystem schon fertig?
          könntest du dann mal mrhappiness zum benchmarking schicken - würde mich mal interessieren
          http://www.template-benchmark.de/benchmarks/

          Kommentar


          • #6
            OffTopic:

            @3DMax: Leider bin ich bis jetzt kaum dazu gekommen, etwas zu machen... Sobald sie fertig ist, bekommt mrhappiness Post.

            Nieder mit der Camel Case-Konvention

            Kommentar

            Lädt...
            X