PHP-Template Engine in einer Zeile

Auf der Suche nach brauchbaren Template-Engines für PHP, die ohne zu großen Overhead auskommen und eine brauchbare Performance bieten können, bin ich über ein sehr smartes Stück Code gestolpert, das mit Sicherheit für viele, insbesondere für kleine Anwendungen mehr als ausreicht. Die Template „Engine“ besteht aus einer Zeile:

1
print preg_replace("/\{([^\{]{1,100}?)\}/e","$$1",file_get_contents("template.tpl"));

Die Datei template.tpl sieht wie folgt aus:

1
2
<h1>{header}</h1>
{text}

Im PHP-Script setzt man jetzt die Variablen analog zu den Template-Platzhaltern:

1
2
3
$title="Example page";
$header="My Examples";
$text="See the placeholders replaced?";

Ich gebe zu: Man kann sich darüber streiten, ob man einer Template-Engine (und nichts anderes ist PHP ja im Prinzip) noch eine weitere Template-Engine überstülpen muss… Grundsätzlich ist es aber mindestens aus Gründen der Übersichtlichkeit sinnvoll, Logik und Darstellung zu trennen. Da kann der Einzeiler insbesondere bei kleinen Projekten sehr hilfreich sein, ohne dass man gleich den Dinosaurier Smarty oder ähnliche Vertreter nutzen muss.

Keinen verwandten Inhalt gefunden.

Ihnen hat dieser Artikel gefallen oder geholfen? Prima! Dann denken Sie doch an mich, wenn Sie eine Webseite benötigen!

Dieser Eintrag wurde veröffentlicht in php und getagged , , , . Bookmarken: Permanent-Link. Kommentieren oder ein Trackback hinterlassen: Trackback-URL.

Ihr Kommentar

Ihre E-Mail wird niemals veröffentlicht oder verteilt. Benötigte Felder sind mit * markiert

*
*

Du kannst diese HTML Tags und Attribute verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Time limit is exhausted. Please reload CAPTCHA.