dedlfix: PHP-Aufbau Formular

Beitrag lesen

echo $begrüßung;

die dritte, von dir angesprochene möglichkeit, einfach ?> jetzt kommt html <?php war die geschichte mit "php ist ansich schon eine template engine" (das muss man natürlich sehr dehnbar sehen, da man bei "echten templates" markierungen setzt und keinen vollständigen programmcode

Man liest oft die Meinung, man müsse Programmcode und HTML-Code voneinander trennen, weswegen man Templates mit Platzhaltern erfand, die man mehr oder wenig aufwendig parst und die notwendigen Ersetzungen vornimmt. Diese Meinung findet sich auch in irgendeinem weit zurückliegenden Archivposting von mir (damals war HTML_Template_IT bzw. _Sigma aus PEAR mein Favorit). Mittlerweile sehe ich die Sache anders. Für mich gehört die Trennung nach Logik sortiert: verarbeitende Logik, Ausgabelogik. Wenn zum Ausgeben der Daten Programmcode benötigt wird, beispielsweise ein Schleifenkonstrukt, dann ist das Ausgabelogik und die hat durchaus ihren berechtigten Platz im Ausgabe-Teil, also im von Ausgabelogik-PHP-Code durchsetzten HTML-Teil.

Das gesamte Script ist also so aufgeteilt, dass der erste Teil die Daten beschafft und verarbeitet und reine Datenstrukturen unabhängig von konkreten Ausgabebedingungen bereitstellt. Der zweite Teil ist ein HTML-Template mit PHP-Code, der an den vorgesehenen Stellen notiert ist und die Daten ausgibt und sie dabei ausgabegerecht bearbeitet. Dafür können neben einfachen Kontrollstrukturen und Hilfsfunktionen durchaus auch komplexe Helfer eingesetzt werden (die idealerweise aus einer eingebundenen Bibliothek stammen), beispielsweise Datagrids, Navigationselemente oder Formulare erzeugende Funktionen.

echo "$verabschiedung $name";