Zu den Aufzeichnungen der tutorials.de-Live-Workshops
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
813
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Fluctuator Fluctuator ist offline Mitglied Bronze
    Registriert seit
    Feb 2003
    Beiträge
    37
    Hallo,

    ich habe vor eine eigene Klasse zum Parsen von Templates zu schreiben. Leider komme ich aber an einer grundlegenden Stelle nicht weiter: Wie schaffe ich es, daß das parsende Programm (also die Klasse, oder?) die zu parsenden Variablen in einem Template erkennt?

    Bsp. einfach.tpl.htm:
    <tr>
    <td>{Überschrift}</td>
    </tr><tr>
    <td>{Inhalt}</td>
    </tr>

    Ich habe des öfteren gelesen, daß man diese Variablen in geschweifte Klammern schreibt. Wie erkennt jetzt der Parser, daß es sich bei {Überschrift} und {Inhalt} um Variablen handelt?
    Könnte folgende Funktion dafür geeignet sein:
    // "Standartsuchmuster" für den Parser
    preg_match_all("/\{([A-Z\_]*)\}/", $to_parse_new, $parse_vars_new);
    Wenn ja, könnte mir jemand erklären wie sie funktioniert?

    MfG Fluctuator
     

  2. #2
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Bevor man postet, und Tutorials anschauen, dort findet man folgendes:
    http://www.tutorials.de/tutorials23173.html

    Und für deine Funktion:

    http://www.php.net/manual/de/functio...-match-all.php
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  3. #3
    Fluctuator Fluctuator ist offline Mitglied Bronze
    Registriert seit
    Feb 2003
    Beiträge
    37
    Das Tutorial kenne ich bereits. Doch hat es mich auch nicht weiter gebracht, da ich

    //Parser Methode
    function rplc($var_array)
    {
    //Schleife : Ersetzt jeden Key des übergebenen Arrays
    //sprich jeden Platzhalter mit dem entsprechenden Wert
    foreach($var_array as $key => $value)
    {
    //Regulärer Ausdruck für den Platzhalter
    $regex = "°{[[:space:]]*?(".strtoupper($key)."){1,}?[[:space:]]*?}°si";
    $this->temp_content = preg_replace($regex, $value, $this->temp_content);
    }
    }

    nicht komplett nachvollziehen kann (z.B. was passiert mit $regex, sieht ziemlich kryptisch aus, oder?). Und die englische Erklärung von preg_match_all im PHP Manual ist auch ein wenig unverständlich, wenn man nicht schon genau weiß, was die Funktion macht.
    Daher immer noch die Bitte um Erklärung.

    MfG Fluctuator
    Geändert von Fluctuator (11.02.03 um 18:43 Uhr)
     

Ähnliche Themen

  1. Template Klasse
    Von MaxivB im Forum PHP
    Antworten: 20
    Letzter Beitrag: 17.01.09, 18:59
  2. Prob mit template klasse!!
    Von Headymaster im Forum PHP
    Antworten: 3
    Letzter Beitrag: 21.10.06, 22:12
  3. Antworten: 6
    Letzter Beitrag: 08.06.06, 20:49
  4. template Klasse ableiten?
    Von Squeegee im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 29.12.05, 17:37
  5. Template Klasse
    Von HolgerX im Forum C/C++
    Antworten: 9
    Letzter Beitrag: 30.03.05, 17:05