Tom: Parsing ändern

Beitrag lesen

Hello,

Ist das eigentlich sinnvoll?

Das ist nicht nur sinnvoll, sondern muss so sein, weil du in PHP jedes Element benutzen kannst, bevor es deklariert wurde. Folgender Code funktioniert beispielsweise:

10 eins();
20
30 function eins() {
40   echo "eins";
50 }

Die Funktion eins() wird in Zeile 10 aufgerufen, noch bevor der Funktionskörper in Zeile 30 erscheint. Das ist nur möglich, weil der Interpreter zuerst den kompletten Code einliest und erst im Anschluss mit der Ausführung beginnt.

Der Code wird aber noch nicht fertig interpretiert, sondern es werden im Prinzip nur die Bezeichner eingesammelt und eine (passende) Referenz dafür angelegt.

Bedingte includes werden erst dann durchgeführt, wenn die Bedingung zutrifft. Anschließend werden sie genauso mit einem erten Durchlauf auf Bezeichner durchsucht. Auch die vollständige Interpretation eines Includes findet erst statt, wenn die darin enthaltenen Funktionen benutzt werden.

Wie das genau funktioniert, wird hier sicherlich jemand erklären können. Auf jeden Fall kann man aber den zu ladenden und durchzuarbeitenden Quellcode dadurch kurz halten, indem man in sinnvolle Module (includes) aufteilt, die erst dann angefordert werden, wenn sie auch benötigt werden.

Eine sinnvolle Methode erscheint mir dafür zu sein, für seine Seiten ein Framework von außen nach innen aufzubauen. Die in der Rahemnseite darzustellenden Formulare werden samt ihrer eigenen Logik (was passiert bei welchem Submit?) in Includes ausgelagert. Die übergeordnete Logik entscheidet, welches Modul für diesen Request benötigt wird und beschafft es.

Liebe Grüße aus Syburg

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de