5.3 Het runnen van PHP

Top  Previous  Next

Dit programma bevat PHP. Dat houdt in dat het NIET opgeslagen kan worden als een HTML- document, met andere woorden de extensie ‘.html’ kan niet gebruikt worden, dit móet ‘.php’ zijn.

Wanneer het document in de browser wordt geopend moet eerst PHP vertaald worden naar HTML. Je eigen browser kan dit niet, dit kan alleen op de server gebeuren. Immers daar draait de PHP-server, het programma dat PHP in HTML kan omzetten.
 

Wil je dus bovenstaand programma “hallowereld.php” laten runnen, dan moet dit via een webserver gaan.

Op je computer heb je WAMPP draaien als webserver.
Wanneer je nu in je browser het ip-adres 127.0.0.1 of als naam localhost invoert, dan ga je niet internet op, maar wordt je verwezen naar je “privé-ISP” die je op je eigen computer hebt geïnstalleerd. Je wordt doorverwezen naar WAMPP met de webserver en PHP-server.

 
Localhost simuleert dus, dankzij XAMPP, een ISP op je eigen computer.

Wat gebeurt er dan op localhost (of bij je ISP) na het aanroepen van een ‘.php’-bestand?.

De webserver (Apache) krijgt een bestand met de extensie ‘.php’ te verwerken. De webserver kan hier echter niks mee, want een webserver kan alleen HTML-bestanden doorgeven aan de browser van de cliënt.

Op de server draait echter PHP.exe (de PHP-server). Die webserver ‘weet dit’. Het PHP-document wordt nu aan dit programma doorgegeven. Je kunt dit vergelijken met het openen van een Worddocument vanaf een website. Je browser kan niks met een Word-document en vraagt of je het bestand wilt opslaan of met Word wilt openen.

Deze PHP server pakt het document “hallowereld.php” op en vertaalt dit, zet dit om, naar gewoon HTML. Deze HTML-vertaling wordt teruggegeven aan de webserver, en deze stuurt dan dit HTML bestand naar de browser van de cliënt.

Je kunt dit heel testen door in de browser te kiezen voor ‘bron weergeven’. Je ziet nu geen enkel PHP-statement. Dit is allemaal vertaald in puur HTML en deze broncode zie je in de browser.

De code die je in PHP maakt is dan ook nooit zichtbaar voor de cliënt (degene die de website bezoekt).

Let op: Open je hallowereld.php in je browser zonder gebruik te maken van localhost, dan werkt dit proces niet. PHP wordt dan niet omgezet en HTML kan er niks mee. Je krijgt dan wel de php- code te zien want HTML beschouwt dit als een foutief gebruikte HTML-tag die wordt genegeerd. De PHP-code wordt in die situatie niet uitgevoerd maar beschouwd als onbegrijpelijk HTML.

Voor de liefhebber nog wat achtergrond informatie:
Technisch gesproken gebeurt het vertalen van PHP naar HTML via interpreter. Regel voor regel wordt de PHP-code vertaalt in HTML. AL die tijd is de PHP-server (de interpretor) op de achtergrond aanwezig om dit proces uit te voeren.
Wanneer je een programma maakt in Visual Basic for Applications, bijvoorbeeld binnen Excel, dan gaat dit op dezelfde manier. Dankzij de aanwezigheid van een server (Excel met VBA in dit voorbeeld) kan het programma ‘runnen’.
Bij een ‘gewone’ programmertaal bijvoorbeel Delphi (object georienteerd Pascal) wordt een programma gecompileerd: Het wordt in één keer omgezet in een executable programma, een bestand met de extensie ‘.exe’. Dit programma kan zelfstandig draaien zonder programma server op de achtergrond.