Is PHP nog steeds relevant?
Bij Eenvoud gebruiken we PHP voor de server-side kant van onze webapplicaties. PHP is, net als GNU en YAML, een recursief acroniem en staat voor PHP Hypertext Preprocessor. Het is een open-source script taal die draait op de server en in 1994 voor het eerst het licht zag.
1994? Dat is 1735 in tech-land. Is die taal nog wel geschikt voor moderne web applicaties van nu?
In het kort; ja! Voor het waarom; lees verder.
In den beginne
Zoals gezegd is PHP gecreëerd in 1994, en wel door Rasmus Lerdorf. Lerdorf was een software developer bij IBM. Hij wilde een eenvoudige taal met een C-syntax om HTML te manipuleren. Hoewel nooit ontworpen voor algemeen gebruik, werd PHP enorm populair. Het was de perfecte toevoeging aan HTML en CSS.
Zeev Suraski en Andi Gutmans gingen Rasmus Lerdorf helpen bij het ontwikkelwerk en herschreven samen met hem de parser. Zend Engine 1 was geboren. Met PHP 5 en Zend Engine 2 werd object oriented programming (OOP) toegevoegd.
Later kwamen daar ook namespaces (PHP 5.3), anonymous functions (PHP 5.3) en traits (PHP 5.4) bij.
PHP en nog eens PHP
Doordat PHP eenvoudig te leren is, is het uitgegroeid tot de meest gebruikte programmeertaal voor webapplicaties. Afhankelijk van de bron kun je stellen dat 70 tot 80 procent van alle websites PHP gebruikt. Dit wordt mede veroorzaakt door WordPress en Drupal. Deze enorm populaire platforms zijn geschreven in PHP.
Ook in de top 10 van meest belangrijke programmeertalen staat PHP al jaren op een hoge plek.
Vanaf 7 is alles beter
Hoewel PHP veel werd gebruikt en bij developers erg populair was, waren er toch ook problemen.
PHP 5 had last van performanceproblemen. Ook kwam PHP vaak in het nieuws met beveiligingsproblemen. Eind 2015 kwam versie 5.7 uit. Met de nieuwe Zend Engine 3 werden de performanceproblemen grotendeels opgelost en werd veel nieuwe functionaliteit toegevoegd. Men wilde het vanaf nu beter gaan doen. Om deze nieuwe start meer gewicht te geven werd versie 5.7 omgedoopt tot versie 7.
Vanaf versie 7 neemt het ontwikkelteam de zaken meer serieus. Oude onderdelen werden als deprecated aangemerkt. Ook werd er een release-cycle van een jaar ingesteld.
Composer
Maar er was meer: Composer. Composer is een package manager voor PHP. Van oudsher werden (PHP) frameworks geschreven als grote logge verzamelingen van code die door één bedrijf / persoon werden onderhouden. Denk aan Zend Framework 1 en Code Igniter. Eenmaal gekozen voor een framework, zat je behoorlijk vast.
Dit is niet de manier zoals we dat in deze moderne tijd willen zien. We willen die onderdelen kiezen die we nodig hebben. Er was behoefte aan een verzameling componenten waaruit we zelf konden kiezen. Composer kwam daarin tegemoet. Composer laat je een lijst met dependencies samenstellen en installeert deze componenten binnen je project.
Ook moderne Frameworks als Laravel en Symfony gingen over op een Composer componenten structuur. De PHP omgeving veranderde van een gecentraliseerd framework landschap naar een gedistribueerd ecosysteem met gespecialiseerde componenten waar coding standards de toon aangeven.
Diezelfde frameworks voegden ook andere gangbare ontwikkeltechnieken toe aan hun manier van werken. Denk aan service containers, middleware en events. Door hun opzet dwongen ze je om beter te coderen. Je leerde design patterns kennen en er was meer aandacht voor clean code. Daardoor kwam PHP in zijn geheel op een hoger niveau.
Verw8ing
In 2020 kwam PHP 8 uit. Eind 2021 werd 8.1 uitgebracht waarin er opnieuw een grote stap werd gemaakt. Onder andere de Just-In-Time (JIT) compiler werd verbeterd en zogenaamde nullsafe operators en named arguments werden toegevoegd.
Er wordt hard gewerkt om de taal veiliger en strikter in het gebruikt te maken, zodat het zich kan meten met de andere moderne talen van nu. Met versie 7 en 8 laat PHP zien dat het van het meest populaire taaltje uit de klas is opgeklommen naar een volwassen taal met een rijke omgeving van moderne frameworks.
Dus, is PHP nog steeds relevant? Zeer zeker!
Daarom zal bij Eenvoud PHP voorlopig nog als meest belangrijke server-side taal worden gebruikt.
Neem contact met ons op!
Meer weten?
Wil je meer weten over dit onderwerp?
- Voor een mooi overzicht van PHP raden we aan deze tijdlijn te bekijken: https://www.jetbrains.com/lp/php-25/
- PHP Watch houdt nieuws bij dat te maken heeft met PHP: https://php.watch/
- Voor standaarden en best practices: https://www.php-fig.org
- Om sneller een volledige applicatie te bouwen gebruiken wij bij Eenvoud frameworks zoals Laravel: https://laravel.com