2017-09-23 1 views
1

Angenommen, ich habe eine PHP-Datei auf dem Server, die Text, HTML, CSS, JavaScript und PHP-Code enthält.Wie und wer macht das Codefaktoring/Splitting von Client- und Servercode, die in der gleichen PHP-Datei vorhanden sind?

Nach meinem Wissen wird jeder PHP-Code serverseitig ausgeführt, nachdem er die Anfrage für dieselbe PHP-Datei vom Client (d. H. Dem Webbrowser) erhalten hat.

Der Rest des Codes aus der PHP-Datei, d. H. HTML-, CSS- und JavaScript-Code, werden auf der Client-Seite (d. H. Im Web-Browser) ausgeführt. Mit anderen Worten, es ist die Aufgabe des Webbrowsers, solchen Code auf der Client-Seite selbst auszuführen.

Meine Frage ist alle Dinge (d. H. Der Text, HTML, CSS, JavaScript und PHP-Code) sind in der gleichen Datei, die PHP-Erweiterung hat und diese Datei startet die Ausführung nur nach dem Empfang der Anfrage für die gleiche Datei vom Client.

Dann, nach dem Empfang der Anfrage, wie ist die Code-Trennung gemacht und wer tut es?

Mit Trennung meine ich die Trennung von serverseitigem Code und clientseitigem Code. Wer und wie findet diese Codetrennung statt?

Auch am Ende bekomme ich das Ergebnis aller Code auf einer einzigen Seite (d. H. Die PHP-Datei, die ich angefordert habe). Wer und wie funktioniert diese Neukombination der Ausgabe von Server- und Clientseite in einer einzigen Datei?

Antwort

1

PHP ist auf dem Server ausgeführt werden, der nur ausgibt Inhalt (HTML, CSS, JavaScript, Bilder - was nicht PHP ist, oder wird von dem PHP-Code erzeugt) an den Client. Alle diese werden vom Kunden beim Empfang behandelt - html und css werden geparst und angezeigt, Javascript wird ausgeführt, und jeder andere Inhalt wird auf seine eigene Weise behandelt. Möglicherweise sehen Sie jede Anforderung des Clients in Ihren Browser-Entwicklungstools sowie die Serverantwort (von denen jede einen MIME-Typ hat, was bedeutet, dass sie nur eine Art von Inhalt hat). Eine vollständige Standard-Webseite wird normalerweise über mehrere Anfragen gesendet, wobei der Haupt-HTML-Text nur der erste von ihnen ist.

+0

Meinen Sie nach dem Empfang der Anfrage auf dem Server vom Client vor allem PHP-Code ausgeführt wird und die nicht-PHP-Inhalt (HTML, CSS, Javascript, Bilder - was auch immer ist nicht PHP oder wird von der PHP-Code erzeugt) wird als Antwort zurück an den Browser gesendet? Bis die PHP-verarbeitete Antwort am Browserende empfangen wird, wird kein HTML, CSS, JavaScript usw. geparst/ausgeführt? Führt der serverseitige Code zuerst und dann den Rest von allem aus, d. H. Html, css, javascript, images - was auch immer nicht php ist, oder wird durch den PHP-Code erzeugt? – user2839497

+0

Ziemlich viel, eine Server-Anfrage = eine Art von Inhalt zurück an den Client gesendet. Wenn dieser Inhalt dynamisch ist (PHP-Code), wird PHP auf dem Weg ausgeführt und kann die Antwort nach Belieben ändern, ansonsten wird der Inhalt einfach unverändert gesendet (der Server fügt einen MIME-Typ hinzu, der den Typ des Inhalts beschreibt, aber das ist es auch schon)). Jeder Inhalt wird dann vom Client empfangen und geparst und kann nachfolgende Anfragen nach zusätzlichen Inhalten auslösen (js, images, css, video, Sie nennen es), was wiederum auch dynamisch sein kann, usw. – Calimero

Verwandte Themen