[PHP] PHP Dateien frei von HTML halten.

06/12/2014 18:28 Masterakio1995#1
Hallo liebe Com,
mich würde es interessieren, wie ihr mit eurem HTML Code in PHP umgeht. Ich persönlich finde es nicht schön meinen HTML Code teilweise über echo's auszugeben. Ein Dozent hat mir seine HTML Klasse gezeigt wie er mit den Seiten arbeitet, was meiner Meinung nach aber etwas zuviel drumherum war.

Gibt es eine Möglichkeit seine .php Datei rein Skript technisch zu gestalten?
06/12/2014 18:41 .StarSplash#2
Über kurz oder lang ist das Arbeiten mit einem Framework wohl einfacher und effektiver.
Schau dir mal einige an, ich kann Laravel empfehlen. Dann stellt sich diese Problematik überhaupt nicht, denn man arbeitet üblicherweise mit Masterpages und bindet nur den Inhalt ein.
06/12/2014 18:44 ~ JWonderpig ~#3
Also ich habe immer eine Datei, in der der HTML Code drin ist und ganz oben noch vor
<!DOCTYPE html>
binde ich eine functions.php ein, die sämtliche Klassen und Funktionen beinhaltet.
Ich gebe keinen HTML Code über Echo aus, es sei denn es ist irgendeine Rückmeldung von dem Skript, ob der Vorgang z.B. erfolgreich war oder nicht.
06/12/2014 18:50 Masterakio1995#4
Quote:
Originally Posted by Caiv View Post
Also ich habe immer eine Datei, in der der HTML Code drin ist und ganz oben noch vor
<!DOCTYPE html>
binde ich eine functions.php ein, die sämtliche Klassen und Funktionen beinhaltet.
Ich gebe keinen HTML Code über Echo aus, es sei denn es ist irgendeine Rückmeldung von dem Skript, ob der Vorgang z.B. erfolgreich war oder nicht.
Und wie änderst du dann den Content der Seite?
06/12/2014 19:06 ~ JWonderpig ~#5
In meinem HTML Code rufe ich schon noch Funktionen auf.^^
06/12/2014 19:07 dowhile#6
Gängig ist wohl MVC, also den Code, der die Darstellung generiert vom restlichen Code zu trennen. Wenn dir die Mischung aus HTML und PHP-Code, der ausschließlich auf Basis irgendwelcher Daten Teile des HTML Codes generiert auch zu viel ist, bieten sich Templates Engines wie zum Beispiel Twig an. Dann hast du eine eigene HTML-Datei mit Twig-Teilen ([Only registered and activated users can see links. Click Here To Register...]) und übergibst im PHP-Teil (im View) nur Werte, auf Basis deren Twig dann das endgültige HTML generiert.
06/12/2014 19:15 .StarSplash#7
Laravel ist ein MVC Framework, du hast ein Model, einen Controller und einen View. Im Wesentlichen verarbeitet der Controller Daten und gibt sie an den View zur Ausgabe. Dabei kann eine Html Masterpage genutzt werden, auf der der Code an einer bestimmten Stelle ausgegeben wird.
06/12/2014 19:35 Masterakio1995#8
Quote:
Originally Posted by .StarSplash View Post
Laravel ist ein MVC Framework, du hast ein Model, einen Controller und einen View. Im Wesentlichen verarbeitet der Controller Daten und gibt sie an den View zur Ausgabe. Dabei kann eine Html Masterpage genutzt werden, auf der der Code an einer bestimmten Stelle ausgegeben wird.
Quote:
Originally Posted by dowhile View Post
Gängig ist wohl MVC, also den Code, der die Darstellung generiert vom restlichen Code zu trennen. Wenn dir die Mischung aus HTML und PHP-Code, der ausschließlich auf Basis irgendwelcher Daten Teile des HTML Codes generiert auch zu viel ist, bieten sich Templates Engines wie zum Beispiel Twig an. Dann hast du eine eigene HTML-Datei mit Twig-Teilen ([Only registered and activated users can see links. Click Here To Register...]) und übergibst im PHP-Teil (im View) nur Werte, auf Basis deren Twig dann das endgültige HTML generiert.
Vielen Dank euch zwei. Sieht nach ungefähr dem aus was ich mir vorgestellt habe :).
06/12/2014 20:17 .StarSplash#9
Wenn du dich mit Laravel auseinandersetzen möchtest, sei dir an dieser Stelle diese Webseite hier empfohlen: [Only registered and activated users can see links. Click Here To Register...]

Die Basic Tutorials sind kostenlos, für den Rest zahlt man 9$ im Monat, für das vermittelte Wissen ist das in Ordnung, zumal du dir theoretisch auch alle Videos downloaden und dann das Abo beenden kannst.
06/12/2014 22:36 マルセル#10
Fang an mit Templates zu arbeiten, ich empfehle da einfach mal Smarty - Ist zumindest aktuell mein Favorit.