Wat is PHP en hoe werkt het op de server?

Auteur: Gepubliceerd

In het kort: PHP is een programmeertaal die vooral wordt gebruikt om websites en webapplicaties aan de serverkant te bouwen. De taal verwerkt gegevens, voert de logica van de applicatie uit en stelt het antwoord samen dat de browser ontvangt. Onder meer WordPress en veel webwinkels gebruiken deze taal, maar om zulke websites te bezoeken hoef je PHP niet op je computer te installeren.

Hoe werkt PHP wanneer je een pagina opent?

PHP is een scripttaal: de code wordt uitgevoerd door de runtime van PHP die op de server is geïnstalleerd. De naam is een recursieve afkorting van ‘PHP: Hypertext Preprocessor’: de afkorting komt dus terug in haar eigen uitgeschreven naam. Voor de gebruiker is de functie belangrijker dan de betekenis van de naam: PHP kan op hetzelfde adres verschillende inhoud aanbieden, afhankelijk van de gegevens en de situatie.

Wanneer je een pagina opent, stuurt de browser een verzoek naar de server. Als een applicatie die in PHP is geschreven dit verzoek afhandelt, kan de code controleren of je bent ingelogd, gegevens uit een database ophalen en een antwoord genereren. Vaak is dat HTML, de taal die de structuur van een pagina beschrijft, maar PHP kan ook gegevens in JSON-formaat, een afbeelding of een downloadbaar bestand terugsturen.

De browser ontvangt het resultaat van het programma, niet de code in PHP. Bij een correct ingestelde server zie je in de broncode van de pagina de gegenereerde HTML, maar niet de instructies die een wachtwoord uit de configuratie ophalen of een korting berekenen. Een verkeerde configuratie kan echter bestanden blootleggen. Alleen het gebruik van PHP garandeert dus niet dat gegevens vertrouwelijk blijven.

Waarvoor wordt PHP in de praktijk gebruikt?

PHP verzorgt de backend: het deel van een applicatie dat gegevens verwerkt en de applicatielogica op de server uitvoert. De taal kan samenwerken met een database, bijvoorbeeld MySQL of PostgreSQL, maar niet elk programma heeft een database nodig. Een eenvoudig script kan uitsluitend werken met aangeleverde gegevens of bestanden.

Typische taken van PHP zijn:

Denk aan een webwinkel. JavaScript kan in de browser direct een wijziging van het winkelmandtotaal tonen, maar de server moet prijzen, kortingen en beschikbaarheid opnieuw controleren voordat de bestelling wordt opgeslagen. In een webwinkel die op PHP draait, kan code in die taal deze controles uitvoeren. Vertrouw niet uitsluitend op berekeningen in de browser, want de gebruiker kan de verstuurde gegevens aanpassen.

PHP tegenover HTML, CSS en JavaScript

Deze technologieën vervangen elkaar niet. HTML beschrijft de structuur van een document, CSS bepaalt de vormgeving en JavaScript kan interacties in de browser verzorgen. PHP draait op de server en kan HTML genereren die vervolgens aan de gebruiker wordt getoond.

TechnologieVoorbeeldtaak
HTMLEen kop en formuliervelden maken
CSSDe kleuren en indeling van een formulier bepalen
JavaScriptEen melding tonen zonder de pagina opnieuw te laden
PHPFormuliergegevens controleren en op de server opslaan

JavaScript kan ook op de server draaien, bijvoorbeeld in de omgeving Node.js. De keuze tussen die taal en PHP gaat dan over de backendtechnologie, niet over de vraag of de website interactief moet zijn. PHP op zichzelf vervangt niet de browsermechanismen die nodig zijn om de interface te wijzigen zonder een nieuwe pagina op te halen.

Wat betekent PHP voor je WordPress-site en hosting?

WordPress is een contentmanagementsysteem dat grotendeels in PHP is geschreven. Wanneer je via het beheerpaneel een bericht publiceert, hoef je zelf geen code te schrijven: het systeem voert de benodigde handelingen uit. Kennis van PHP is wel nuttig wanneer je plug-ins maakt, thema’s verder ontwikkelt of problemen onderzoekt waarvoor je de code moet analyseren.

De hosting voor zo’n website moet de juiste versie van PHP en de benodigde extensies ondersteunen. Extensies zijn aanvullende modules van de runtime. De vermelding ‘hosting met PHP’ is op zichzelf onvoldoende om te bepalen of de hosting geschikt is. Controleer vóór aankoop de vereisten van de applicatie en de beschikbare versies in de documentatie van de hostingprovider.

De versie van PHP is belangrijk voor veiligheid en compatibiliteit. Versies waarvan de ondersteuningsperiode is afgelopen, krijgen geen patches meer van het PHP-project. Controleer de actuele ondersteuningsstatus op de officiële website van PHP. Raadpleeg de documentatie van WordPress, thema’s en plug-ins om hun compatibiliteit te controleren. Maak voordat je van versie wisselt een back-up van de bestanden en de database en test de update op een kopie van de website.

Hoe begin je met het leren van PHP?

Voor de eerste oefeningen zijn een teksteditor en een geïnstalleerde PHP-runtime voldoende. Als je de basis van HTML kent en weet hoe formulieren worden verstuurd, zie je gemakkelijker wat de taal aan een website toevoegt. Een minimaal programma ziet er zo uit:

<?php
echo "Hallo! Dit antwoord is gegenereerd door PHP.";

De instructie echo geeft tekst weer. Sla de code op in het bestand index.php, voer vervolgens in de map van dat bestand de opdracht php -S localhost:8000 uit en open het adres localhost:8000 in je browser. Voor deze opdracht moet PHP beschikbaar zijn in de terminal. De ingebouwde server is bedoeld voor oefeningen en tests, niet om een productiewebsite openbaar aan te bieden.

Een volgende oefening kan een formulier zijn dat een voornaam ontvangt en een begroeting toont. Leer meteen hoe je invoergegevens controleert en tekst van gebruikers veilig weergeeft, bijvoorbeeld met htmlspecialchars in HTML-inhoud. Als je alleen een website met WordPress wilt beheren, begin dan liever met het controleren van de PHP-versie bij je hostingprovider en het maken van een bruikbare back-up.

Zie ook: Wat is 2FA?

Lees ook

Lees hoe PHP-FPM PHP-verzoeken verwerkt, verschilt van een webserver en hoe je processen afstemt op verkeer en hostingcapaciteit.
Ontdek hoe BIND als open DNS-serversoftware domeinen beheert, welke rollen het vervult en wanneer zelf beheren zinvol is.
Lees wat het Poolse REGON-register en -nummer betekenen, hoe ze verschillen van NIP en KRS en hoe je bedrijfsgegevens controleert.