PHP in HTML oder nur PHP?

exxe

Mitleser
Hallo!

Ich bin gerade dabei PHP zu lernen.

Jetzt gibt es ja bei der Gestalltung der Seite die Möglichkeit, diese in HTML zu gestallten und dann an den gewünschten Stellen den PHP-Code einzufügen.
Oder man gestalltet sich seine Seite komplett in PHP und gibt die HTML-Befehle über "echo()" aus.

Meine Frage hierzu ist, ob es eigentlich einen Unterschied macht, welche der beiden Möglichkeiten dass man nimmt?
Gibt es dabei Vor-/Nachteile?
Oder ist es einfach nur "Ansichtssache"?
 
Ich glaube es besteht kein merklicher Unterschied darin, ob man PHP-Abschnitte immer wieder abschließt und "reines" HTML einfließen lässt oder ob durch PHP per echo-Anweisungen Inhalte dargestellt werden. Allerdings machen nach meinem Wissen viele echo-Anweisungen ein Script sehr langsam.

Aber die sauberste und wahrscheinlich beste Art, scriptbasierte Seiten umzusetzen, ist ja bekanntlich eh die strikte Trennung von Design und Code, sprich HTML und PHP ( ~ Templates). ;)
 
Original geschrieben von ludz
Aber die sauberste und wahrscheinlich beste Art, scriptbasierte Seiten umzusetzen, ist ja bekanntlich eh die strikte Trennung von Design und Code, sprich HTML und PHP ( ~ Templates). ;)
Allerdings ist der Gebrauch eines Template Systems meiner Meinung nach bei vielen kleineren Projekten schlichtweg überdimensioniert.

Auf der Clientseite macht es überhaupt keinen unterschied, wie du vorgehst, da beim Client sowieso nur der fertige HTML Code ankommt und der sieht in jedem Fall gleich aus.

Wie das jetzt mit der Performance von vielen echo Anweisungen aussieht, kann ich nicht genau sagen, allerdings löse ich es immer folgendermaßen:
  • HTML mit mindestens drei Zeilen, in denen überhaupt kein PHP vorkommt, setze ich außerhalb der PHP-Tags, als einfachen HTML Code.
  • Sollte in solchen Blöcken dann mal ein Wert durch PHP gesetzt werden, binde ich an dieser Stelle unmittelbar ein <?php echo $wert;?> ein.
  • Werden Contentbereiche dynamisch erzeugt und zusammengesetzt, z.B. bei Gästebüchern, Gallerien, Foren, usw. erzeuge ich die HTML Strukturen via echo.
Das mag evtl. nicht die schönste, beste und tollste Methode sein, aber für meinen Workflow hat sie sich am "günstigsten" herausgestellt.

Es gibt aber natürlich auch Situationen, bei denen ich den Gebrauch eines Template Systems vorziehe.
 
Ob die Verwendung eines Template-Systems nun für kleinere Sachen überdimensioniert ist, sei mal dahingestellt. Das hängt denke ich zum einen von der Art des Templatesystems ab, als auch von der Gewohnheit.
Sicherlich ist es, bei wenigen Ausgaben, wenn wir schon bei echos über Performance sprechen, ein kleiner bremser der Performance.

Ich habe mich aber mittlerweile so daran gewöhnt Templatesysteme zu Benutzen (überwiegend Smarty), als dass ich nur ganz selten noch in Scripten die wenig Output haben echos, here-documents oder einzelne php-Blöcke benutze.

Ein Richtig oder Falsch wird es hier auch sicherlich nicht geben, aber für mich persönliche betrachte ich es als schlechten Stil, bei "Projekten" ab grösse eines Gästebuches o.ä. Ausgaben direkt im Code zu haben anstatt ein Templatesystem zu nehmen, um einfach die Logik und den Code von der Ausgabe möglichst weit auseinanderzuhalten. (->ludz)

Als Beispiel: der Thread hier im PHP-Forum: http://www.tutorials.de/tutorials148470.html -> grauenvoll, bei dem Teil will ich nicht der sein der irgendwann mal was ändern muss.... total unübersichtlich
 
Zuletzt bearbeitet:
Zurück