@@TS
Es ist nicht die beste Idee, Markup mit PHP
echo
zu generieren.Nicht HTML in PHP schachteln, sondern andersrum: Markup normal schreiben und nur die veränderlichen Daten mit PHP reinschreiben.
Thema Kontrollstrukturen: Da bin ich nun total anderer Meinung. Das kann später niemand mehr lesen. Außerdem ist HTML keine Programmiersprache und hat daher im Controller nichts zu suchen.
Kontrollstrukturen (if
, for
) != Controller.
Kontrollstrukturen können natürlich im View auftreten:
- wenn $Flag, zeige folgendes an;
- für alle $Daten jeweils eine Tabellenzeile.
Und durch den Wegfall der echo
s und des Escapens von Anführungszeichen ist das besser auch lesbar.
Man verwendet PHP einfach als Templatesprache wie Smarty o.ä.
Ich propagiere daher eine andere Vorgehensweise:
- Statische Inhalte des Dokumentes mit HTML (, CSS) und ggf. zur Not noch mit Platzhaltern
- Daten mittels PHP und Datenbank berechnen
- berechnete Daten mittels PHP an die passenden Stellen im HTML schreiben.
Das ist keine andere Vorgehensweise, sondern genau das, was ich sagte.
Das funktioniert entweder ganz HTML/CSS-konform mit der ID und dem DOM-Parser von PHP oder eben, für einfachen Zusammenhang mit den Platzhaltern (str_replace() mit Arrays).
Warum kompliziert, wenn’s auch einfach geht? Einfach mit echo
jeweils an der entsprechenden Stelle (So wie mit geschweiften Klammern in anderen Templatesprachen.)
- Revolvierende Ausgaben, wie Tabellen, Listen usw. lassen sich dann allerdings sinnvoll nur noch mit dem DOM-Parser erstellen.
Warum kompliziert, wenn’s auch einfach geht? Dazu sind Kontrollstrukturen da, s.o. (So wie mit geschweiften Klammern in anderen Templatesprachen.)
Das zu wiederholende Element ist einmal in der Vorlage enthalten
Eben. Siehe mein Beispiel.
LLAP 🖖
“I love to go to JS conferences to speak about how to avoid using JavaScript. Please learn CSS & HTML to reduce your JS code bloat.” —Estelle Weyl