PHP-Befehle ersetzen mit Pattern

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

  • PHP-Befehle ersetzen mit Pattern

    Hallo,

    ich habe ein kleines Problem. Und zwar arbeite ich gerade an einem CMS das auf Templates basiert. Es verfügt über einen Modulparser, der PHPModule parst und in die Templates einfügt.

    Das funktioniert auch wunderbar jedoch muss ich den $html_str der Anwendung mit dem Modul verwenden und wenn ich echos bzw. prints nehme wird durch eval(); die Ausgabe vor dem eigentlich HTML-Code gemacht.

    Meine Frage ist jetzt wie schaffe ich es den Befehl echo und print so zu ersetzen das, ohne das der eigentlich Inhalt mit ersetzt wird - da ich möchte das die Modulprogrammierung auch mit den Befehlen richtig funktioniert; ich dachte da an reguläre Ausdrücke, nur hab ich davon keinen Plan .

    Vielleicht kann mir einer von euch helfen ?

    Danke schon mal im vorraus

    mfg

    IRRESPONDER

  • #2
    dann denk ich haste nen Fehler in deinem Modul Konzept.

    Ich habe auch ein modulares Projekt, wo es aber eine Templateengine gibt, welche als einzige Datei im gesamten Projekt den "echo" Befehl enthält. Alle Module und Erweiterungen haben ihre Ausgaben gefälligst an die Templateengine zu übergeben und die entscheiden: Was, Wann und Wo angezeigt wird.

    Bis jetzt sind es bei mir 7 Module, die beliebig an/ausgeschaltet werden können.
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      ich hab mir ein meine templateengine einen kleinen Schalter eingebaut.

      schalter = 0
      ausgabe des Templates mit Echo

      schalter = 1
      rückgabe des Templates in eine Variable, die kann dan z.B. in anderen Templates weiterverwendet werden.

      gruss

      Kommentar


      • #4
        vielleicht habe ich mich ein wenig falsch ausgedrückt, ich weiß nicht ob man das wirlich templates nennen kann. sind halt seiten aus der datenbank die mit platzhalter befüllt werden.

        bei ist das halt so das mein ein modul erst auf einer contentseite plazieren muss um sie anzeigen. das sieht dann so aus &&MODULE0&& ich kann bis zu 999 module integrieren. der platzhalter wird dann durch den inhalt die meine parsefunktion zurückgeliefert ersetzt.

        ich möchte halt nur das ich anstatt $html_str .= in den modulen auch echo schreiben kann, ohne das das negative auswirkungen auf die darstellung hat. ich möchte ja nur wissen wie ich gezielt echo "*"; und print ("*"); durch $html_str .= ersetzen kann, um das ganze beim coden einfacher zu gestalten.

        mfg

        irresponder

        Kommentar

        Lädt...
        X