PHP is vandaag de dag een van de populairste programmeertalen. Volgens W3Techs wordt PHP gebruikt door meer dan 78% van alle websites die een programmeertaal gebruiken op hun servers. Dit betekent dat 8 van de 10 websites die je bezoekt waarschijnlijk gebruik maakt van PHP. En het speelt natuurlijk een vitale rol in het ecosysteem van WordPress, omdat de gehele CMS is opgebouwd in PHP.

Wilt u snel uw PHP-versie controleren? Maak een phpinfo-pagina aan.

Een dilemma dat we tegenwoordig hebben, is dat bedrijven, ontwikkelaars en hosts achterblijven als het neerkomt op het ondersteunen van de nieuwste versies van PHP. Sommige van de onderstaande statistieken kunnen als schokkend worden ervaren. Vandaag willen we het hebben over waarom het zo belangrijk is dat iedereen de nieuwste versie van PHP gebruikt, niet alleen voor de veiligheid, maar ook voor betere performance en ondersteuning.

Oude versies van PHP

Zoals elke soort software heeft PHP een ontwikkelingscyclus waar het zich aan moet houden om te kunnen groeien en verbeteringen door te kunnen voeren.  Elke grote uitgave van PHP wordt standaard ondersteund voor twee jaar nadat het uitkomt. In die tijd worden bugs en veiligheidsproblemen regelmatig aangepakt.

Ondersteunde versies van PHP

Ondersteunde versies van PHP

Einde levensduur PHP 5.6, 7.0 en PHP 7.1

Wanneer een versie het einde van zijn levensduur heeft bereikt, ontvangt deze geen beveiligingsupdates meer, waardoor deze is blootgesteld aan mogelijke beveiligingslekken.

  • Op 1 december 2019 was dit het geval voor PHP 7.1.
  • Op 3 december 2019 bereikte PHP 7.0 het einde van zijn levensduur.
  • Eerder, op 31 december 2018 bereiktte PHP 5.6 het einde van zijn levensduur. Dit betekent officieel het einde van het tijdperk van PHP 5, die het veld moet verlaten na 14 jaar trouwe dienst.

Volgens de officiële WordPress Stats-pagina gebruikt 35% van de WordPress-gebruikers op het moment van schrijven nog steeds PHP 5.6 of lager. Als je de gebruikers van PHP 7.0 en 7.1 hierbij optelt, dan maakt maar liefst 64% van de gebruikers momenteel een PHP-versie die niet langer wordt ondersteund.

Het is zelfs nog alarmerender als we de statistieken van buiten de WordPress-community in ogenschouw nemen. Volgens W3Techs maakt 55.8% van alle websites die op PHP draaien nog gebruik van PHP 5.

64% Click to Tweet

Dit is niet alleen schadelijk vanuit een beveiligingsperspectief. Het betekent ook dat een groot deel van WordPress-sites geen gebruik maakt van de extra prestatieverbeteringen van PHP 7.

WordPress statistieken over PHP-versies

WordPress statistieken over PHP-versies

Waarom de trage acceptatie van nieuwere versies?

De hoofdreden voor het gebrek aan implementatie van nieuwe versies komt neer op een aantal factoren:

  • De vaakst voorkomende reden die we horen van nieuwe klanten die overstappen naar Kinsta is dat bedrijfseigenaren geen idee hebben van of zich niet interesseren voor hun PHP-versie. Dit is natuurlijk begrijpelijk in sommige gevallen: we verwachten niet dat iedereen verstand heeft van PHP.  Vaak valt de verantwoordelijk bij de ontwikkelaar, het uitzendbureau of de host.
  • Het kost ontwikkelaars tijd om hun code bij te werken zodat ze de nieuwe versies van PHP ondersteunen. Dit is inclusief ontwikkelaars van websites, thema’s, plug-ins, enz.
  • Het kost niet alleen moeite en tijd om de code bij te werken, maar er moet ook uitvoerig worden getest om er zeker van te zijn dat alles compatibel is. WordPress zelf heeft al meer dan 49.000 plug-ins beschikbaar!
  • Veel WordPress-hosts zijn terughoudend over het doorvoeren van nieuwe PHP-versies omdat dit zou betekenen dat er een hoop extra support-tickets worden geopend als sites hierdoor niet meer werken. Als een WordPress-host begrijpen we dit, maar uit onze ervaring is het meestal juist andersom. Veel support-tickets die worden aangemaakt worden juist veroorzaakt door problemen met oude versies van PHP.
  • De ontwikkelaar of het bureau bevindt zich tussen hamer en aanbeeld op het moment dat hij te maken krijgt met klanten en applicaties van een derde partij en geen middelen wilt uitgeven aan updaten.

Dat gezegd hebbende is het nog steeds geen excuus om een PHP-versie te gebruiken die verouderd is, niet wordt ondersteund, en mogelijk ook nog je website langzamer maakt. Het goede nieuws is dat er vooruitgang wordt geboekt.  Jordi Boggiano, mede-oprichter van Private Packagist, maakt elk jaar een rapport over de gebruiksstatistieken van PHP. En zoals je hieronder kunt zien, is er vooruitgang. Dit is natuurlijk slechts een klein onderdeel van de Composer-installaties, maar het is nog steeds interessant om de veranderingen te zien.

PHP gebruikersstatistieken - samengesteld door Jordi Boggiano

PHP gebruikersstatistieken – samengesteld door Jordi Boggiano

Redenen waarom je je PHP-versie moet updaten

Bekijk hieronder enkele redenen waarom wij adviseren om de laatste versie van PHP te gebruiken.

1. Veiligheid

Een van de belangrijkste redenen om PHP te updaten is om ervoor te zorgen dat je een PHP-versie gebruikt die volledig wordt ondersteund en regelmatig wordt beveiligd tegen kwetsbaarheden. PHP 5.4 is niet meer bijgewerkt sinds 2015 en PHP 5.5 is niet meer bijgewerkt sinds 2016. Het is echter belangrijk om op te merken dat sommige verkopers van besturingssystemen nog steeds updates uitbrengen voor oude versies van PHP.

Volgens CVE Details was 2016 een van de slechtste jaren voor de veiligheid van PHP, met meer dan 100 kwetsbaarheden die werden gerapporteerd. Deze kwetsbaarheden waren inclusief DoS, code-injectie, overflow, geheugencorruptie, XSS, het doorlopen van mappen, bypass en het verkrijgen van informatie. 2017 was het op-twee-na slechtste jaar sinds 2000, met meer dan 40 kwetsbaarheden.

Kwetsbaarheden in PHP per jaar

Kwetsbaarheden in PHP per jaar

Zelfs PHP heeft commentaar gegeven over het het belang van het gebruiken van de meest recente versie:

PHP, net zoals elk ander groot systeem, staat of valt met voortdurend onderzoek en verbeteringen. Elke nieuwe versie bevat grote en kleine aanpassingen om de veiligheid te verbeteren, gebreken te verhelpen, problemen op te lossen en andere kleine aanpassingen te doen die ten goede komen van de veiligheid en stabiliteit van je systeem. Net zoals bij andere systeemcode en -programma’s, is het aan te raden om vaak te updaten en op de hoogte te blijven van de nieuwe versies en wat erin verandert. PHP, Keeping current

2. Performance

De lancering van PHP 7.2, 7.3 en 7.4 ging gepaard met enorme verbeteringen in performance! Zo enorm dat het een hogere prioriteit zou moeten hebben dan alle andere kleine optimalisaties die je gepland hebt voor je WordPress-site. Deze benchmarks laten significante verbeteringen van de performance zien tegenover de oudere versies. PHP 7 stelt het systeem in staat om twee keer zo veel aanvragen per seconde te verwerken als PHP 5.6, met bijna de helft van de latentie.

php 5.6 vs php 7

PHP-benchmarks door Rasmus Lerdorf, PHP Fluent Talk

We hebben ook onze eigen PHP-benchmarks uitgevoerd. En net als de statistieken hierboven, zagen we dat PHP 7.3 bijna 3x zoveel transacties (verzoeken) per seconde kon uitvoeren dan PHP 5.6. PHP 7.3 is gemiddeld 9% sneller dan PHP 7.2.

WordPress-benchmarks

WordPress-benchmarks

  • WordPress 5.0 PHP 5.6 benchmark: 91.64 req/sec
  • WordPress 5.0 PHP 7.0 benchmark-resultaten: 206.71 req/sec
  • WordPress 5.0 PHP 7.1 benchmark-resultaten: 210.98 req/sec
  • WordPress 5.0 PHP 7.2 benchmark-resultaten: 229.18 req/sec 
  • WordPress 5.0 PHP 7.3 benchmark-resultaten: 253.20 req/sec 🏆

Christian Vigh heeft ook een PHP performancevergelijking uitgebracht waarin hij meldt dat PHP 5.2 400% langzamer was dan PHP 7.

Vergelijking van de resultaten van de CPU-benchmark

Vergelijking van de resultaten van de CPU-benchmark

3. Ondersteuning

Ondersteuning is nog een reden om over te stappen op de nieuwste en (meest) ondersteunde versies van PHP. Vaak kunnen ontwikkelaars van plug-ins en thema’s alleen ondersteuning bieden voor een beperkt aantal vorige versies. Dit komt vaak door tijdsdruk en het (daardoor) geen tijd hebben om te testen op compatibiliteit. Je website zal uiteindelijk niet meer werken op oude versies en je kunt dit zelf zien gebeuren op de WordPress-forums. Daar is een veel voorkomende fout die wordt veroorzaakt door een verouderde versie van PHP en hoe deze een bepaalde functie afhandelt:

Parse error: syntax error, unexpected '' (T_VARIABLE), expecting function (T_FUNCTION) in /pub/file.php on line xxx

Je kunt op de WordPress-forums zoeken naar “unexpected T Function” en je zult begroet worden door meer dan 2.000 threads, waarvan er veel van de afgelopen paar dagen zullen zijn. Hier zijn een aantal recente voorbeelden die allemaal zijn veroorzaakt door een oude versie van PHP:

Veel van deze threads worden geopend, omdat ze een verouderde versie van PHP gebruiken. Hetzelfde kan echter ook gezegd worden over threads die worden begonnen door incompatibiliteit met PHP 7. Dit geeft aan dat de WordPress-ontwikkelaarscommunity nog steeds bezig is om de vernieuwingen van PHP bij te benen.

4. Nieuwe features voor ontwikkelaars

De meeste WordPress-ontwikkelaars werken het liefst met de nieuwste versie van PHP als ze daarvoor de kans krijgen, omdat er veel nieuwe features zijn toegevoegd tussen PHP 5.2 en PHP 7.4. Een aantal aanpassingen van PHP 7 en 7.3 zijn:

  • Samengevoegde vergelijkingsoperator
  • Null verenigingsoperator
  • Nieuwe type-hinting
  • Anonieme classes
  • Null-bare types
  • Herhaalbare en void returns
  • Multi-catch afhandelen van exceptions
  • Sleutels die je kunt gebruiken in lists
  • Meer negatieve string-offsets
  • Nummeroperators en malformed numbers
  • HTTP/2 server push
  • Preloading
  • Spread operator in array expression
  • Arrow functions 2.0 (short closures)
  • Null coalescing assignment operator
  • Typed properties 2.0
  • Weak references
  • Covariant returns en contravariant parameters
  • Nieuw custom object serialization mechanisme

Het is niet leuk om oude versies te moeten ondersteunen. Helaas zitten veel ontwikkelaars vast aan het moeten ondersteunen van een breed scala aan versies.

Controleren of je host de nieuwste versie van PHP ondersteunt

Het heeft even geduurd, maar de officiële WordPress.org vereisten raden hosts nu aan om over te stappen op PHP 7.3 of hoger.

Yoast heeft laatst een geweldig artikel uitgebracht genaamd “Whipping your hosting into shape”. Joost de Valk vertelt in het artikel gedetailleerd over dat het daadwerkelijke probleem bestaat uit hostingproviders die niet sneller upgraden en, wanneer ze dat wel doen, niet genoeg doen om hun gebruikers aan te moedigen ook te upgraden. En Yoast gaat daar iets aan doen. Vanaf Yoast SEO 4.5 krijgen gebruikers een melding te zien op hun WordPress-dashboard wanneer hun site PHP 5.2 of lager gebruikt.  De melding is groot, lelijk en niet weg te klikken.

PHP 7 is de toekomst (en jongens wat is het mooi en snel). 🚀 -- Joost de Valk via @yoast @kinsta Click to Tweet

We zijn erg blij met Yoast! Kinsta ondersteunt de laatste versies van PHP 7.2, 7.3 en 7.4 vanaf het moment dat de stabiele versies ervan werden gelanceerd.

Elke nieuwe WordPress-installatie bij Kinsta staat standaard ingesteld op PHP 7.3. Daarnaast is PHP 7.2 de minimum versie die we toestaan binnen onze infrastructuur.

Kinsta’s tijdlijn voor het uitfaseren van oude PHP-versies

Op 9 december 2019 zullen we PHP-versies 5.6, 7.0 en 7.1 uit ons MyKinsta-dashboard verwijderen. Voor websites die gebruik maken van een van deze PHP-versies zul je moeten upgraden naar ten minste PHP 7.2.

Op 1 oktober hebben we voor Kinsta-klanten de mogelijkheid uitgeschakeld om voor hun live site over te schakelen naar PHP 5.6, 7.0 en 7.1. Je kan in live omgevingen overschakelen naar PHP 7.2, 7.3 of 7.4, maar niet teruggaan naar 5.6, 7.0 of 7.1. Deze wijziging is van toepassing op alle bestaande sites als op sites die op of na 1 oktober 2019 zijn aangemaakt.

Om te zorgen dat je door kan gaan met testen, geldt dit niet voor testomgevingen.

Sites die lopen op PHP 5.6, 7.0 of 7.1 zullen automatisch naar PHP 7.2 worden bijgewerkt vanaf 9 december 2019.

Onze excuses voor het ongemak dat hierdoor mogelijk wordt veroorzaakt. We streven ernaar de snelste en veiligste omgeving binnen de industrie te hebben en dat betekent dat we moeten zorgen dat alle sites de laatste technologieën gebruiken die actief van beveiligingsupdates worden voorzien.

Bekijk onze uitgebreide gids met stapsgewijze instructies voor het veilig updaten van PHP op je WordPress-site.

Je huidige versie van PHP bekijken

Misschien weet je niet welke versie van PHP je momenteel gebruikt. In dat geval zijn er verschillende manieren om erachter te komen.

1. Bekijk je versie van PHP met Pingdom

Een van de makkelijkste manieren om erachter te komen welke versie van PHP je hebt is om een tool te gebruiken zoals Pingdom of Google Chrome Devtools. De eerste HTTP-requestheader zal je meestal de versie laten zien.

Bekijk je versie van PHP met Pingdom

Bekijk je versie van PHP met Pingdom

Dit ligt eraan of de host de X-Powered-By-headerwaarde heeft aangepast. Als ze dat wel hebben gedaan, zie je misschien niet je PHP-versie, in welk geval je een van de andere opties moet gebruiken. Je kunt altijd contact opnemen met je host en het vragen.

2. PHP-versie controleren in WordPress

Als je WordPress 5.0 of hoger gebruikt, kan je de PHP-versie bekijken onder de tool “Site Health”.

WordPress Site Health Tool PHP versie

WordPress Site Health Tool PHP versie

3. Bekijk je versie van PHP met een bestand

Je kunt ook bekijken welke versie van PHP je hebt door een bestand naar de server te uploaden via FTP.

Stap 1

Maak een leeg bestand aan dat phpinfo.php heeft. In het bestand plak je de volgende inhoud:

<?php
echo 'Current PHP version: ' . phpversion();
?>

Stap 2

Upload het bestand naar de root van je WordPress-site.

Upload phpinfo.php-bestand

Upload phpinfo.php-bestand

Stap 3

Navigeer dan in je browser naar de locatie van je bestand, domein.nl/phpinfo.php. Als het goed is zie je dan je huidige PHP-versie.

Bekijk je versie van PHP in de browser

Bekijk je versie van PHP in de browser

Wat moeten technofoben en mensen met een klein budget doen?

We realiseren ons dat er nog steeds duizenden WordPress-sites zijn die niet compatibel zijn met onze nieuwere PHP-versies, of het nou ligt aan een oude plug-in of een oud thema. De uitdaging ligt bij de de minder technische gebruikers en degenen zonder budget, wat moeten die doen? We hebben hier constant mee te maken wanneer klanten overstappen naar Kinsta of wanneer een PHP-versie zijn end-of-life bereikt.

Hier zijn een aantal aanbevelingen:

  1. Dit is een gegeven, maar update altijd je plug-ins en thema’s naar de nieuwste versie als je dat niet al hebt gedaan.
  2. Neem contact op met de ontwikkelaar van de plug-in of het thema en vraag of ze ondersteuning voor PHP 7.2, 7.3 of 7.4 (of een nieuwere versie) willen toevoegen. We laten onze klanten weten wanneer een PHP-versie uitgefaseerd wordt zodat ze tijd hebben om zich hierop voor te bereiden. Dit is vooral belangrijk voor degenen zonder budget om een ontwikkelaar in te huren.
  3. Zoek een alternatieve plug-in die dezelfde functionaliteiten aanbiedt en wel compatibel is met de huidige versie van PHP. Met dank aan de enorme bibliotheek van WordPress en de duizenden premium plug-ins en thema’s op het internet kun je er bijna van gegarandeerd worden dat er overal een alternatief voor is.
  4. Degenen die wel een budget hebben kunnen een WordPress-ontwikkelaar aannemen om het probleem op te lossen.

PHP updaten

Klaar om te updaten? Top, maar een van de eerste dingen die je moet doen is je site testen om er zeker van te zijn dat hij compatibel is. Je kunt je WordPress-site lokaal testen, of nog beter, gebruik maken van een testomgeving die dichter bij de werkelijk ligt. Voorkomen is beter dan genezen!

Als je een klant bent bij Kinsta kun je gemakkelijk een testomgeving aanmaken met een enkele muisklik. Verander de versie van PHP in het dashboard en begin met testen.

Een WordPress-site aanmaken binnen een testomgeving

Een WordPress-site aanmaken binnen een testomgeving

En onthoud, als je upgradet van een oude versie van PHP, zorg er dan voor dat je ook de versie van je WordPress-installatie updatet. Een nieuwe versie van PHP met een 2 jaar oude versie van WordPress zal waarschijnlijk niet goed aflopen. Wanneer je je site hebt getest en klaar bent om PHP te updaten, zijn hier een aantal bronnen om je op weg te helpen.

Bekijk onze uitgebreide gids met stapsgewijze instructies voor het veilig updaten van PHP op je WordPress-site.

PHP updaten met Kinsta

Als je een Kinsta-klant bent, dan kan je eenvoudig de PHP-versie wijzigen door naar je website te navigeren binnen MyKinsta, naar ‘Tools’ te gaan en een andere PHP-engine te selecteren. Momenteel stellen we PHP 7.2, 7.3 en 7.4 beschikbaar. Opmerking: we hebben de uitfaseringsdatums voor PHP 5.6 t/m 7.1 hierboven gepubliceerd.

Wijziging naar PHP 7.4

Wijziging naar PHP 7.4

PHP updaten vanuit cPanel

Als je host gebruik maakt van cPanel heb je waarschijnlijk al een optie om je versie van PHP te veranderen. Log simpelweg in op cPanel en klik in de categorie “Software” op “Select PHP Version.”

Selecteer PHP-versie in cPanel

Selecteer PHP-versie in cPanel

Je kunt dan een van de beschikbare PHP-versies kiezen die worden ondersteunt door je host.

php 7 cpanel

PHP 7 in cPanel

PHP handmatig updaten op een server

Als je je eigen server beheert raden we je aan om de officiële PHP-documentatie over installaties te bekijken, aangezien de instructies verschillen per besturingssysteem. Je zult willen kijken naar de veranderingen aan functies, classes, wrappers, extenties, modules, enz. Hier zijn een aantal links naar migratiehandleidingen:

Samenvatting

Nu is het tijd om na te denken over upgraden naar PHP 7.4. Niet alleen omdat je ondersteunde software wilt draaien, maar ook omdat je website er gegarandeerd sneller van wordt!  Als je huidige host nog geen ondersteuning aanbiedt voor PHP 7.4, raden we je aan om een nieuwe host te zoeken. Hetzelfde geldt voor thema’s en plug-ins. Als de ontwikkelaar nog geen patch heeft uitgebracht, is het tijd om op zoek te gaan naar een alternatief.

Ben je recentelijk gemigreerd naar PHP 7? We luisteren graag naar je ervaringen hieronder. Was het een makkelijke overgang? Of misschien wacht je nog steeds op een derde partij.


Als je dit artikel leuk vond, dan zul je gek zijn op Kinsta's WordPress hosting platform. Of het nu gaat om het versnellen van jouw website of het krijgen van 24/7 support van ons ervaren WordPress-team. Onze door Google Cloud aangedreven infrastructuur is gericht op automatische schaalbaarheid, prestaties en beveiliging. Laat ons jou het Kinsta verschil tonen! Bekijk onze pakketten