PHP is een van de meest populaire programmeertalen voor web back-end systemen; ongeveer 80 procent van het web draait erop. Tegelijk heeft de taal een vrij slechte reputatie. Er wordt gezegd dat het niet veilig, langzaam en beperkt is, en dat er slecht in geprogrammeerd wordt. Dit lijkt vreemd, maar is goed te verklaren.
PHP is een taal met een hele lage drempel om te leren. Daar is het van origine voor opgezet: tot PHP3 was PHP ook nog een afkorting voor “Personal Home Page”: de ambitie was om het voor iedereen mogelijk te maken om interactiviteit toe te voegen aan de destijds veel voorkomende en vrij triviale pure HTML webpages. Het sleutelwoord hier is “iedereen”; het moest dus makkelijk zijn in het gebruik.
Deze geschiedenis verklaart eigenlijk alles wat we hierboven zagen: PHP is “niet veilig” omdat het wel veilig maken ervan het ontwikkelen erin moeilijker maakt; je moet immers weten hoe je dingen bereikt op een veilige manier. Ook heeft het het beperkt gemaakt: aangezien het bedoeld is voor webpages, en niet voor andere soort applicaties, zijn de opties die je nodig hebt voor desktop applicaties er gewoon niet ingebouwd (al schijnt het wel mogelijk te zijn; zie bv https://github.com/cztomczak/phpdesktop; nooit zelf gebruikt trouwens). Snelheid van de taal is niet echt een doel als je verwacht dat de applicatie voornamelijk I/O bound zal zijn (zeker met de internetverbindingen uit die tijd), en dat er slecht geprogrammeerd wordt in de taal is ook best logisch als het een lage drempel heeft: je kan al met vrij weinig begrip van goed programmeren een prima werkende oplossing neerzetten.
De reputatie is dus op zich echt wel verdiend, en op een bepaalde manier zelfs bewust voor gekozen, maar tegenwoordig niet meer echt terecht. Met PHP5 zijn een heleboel van de echt onveilige opties uitgezet, en is object oriented code mogelijk gemaakt. Hierdoor konden er meerdere frameworks ontstaan, die op hun beurt weer wel een stuk van de kwaliteit van de ontwikkelaars vroegen. Met PHP7 is de AST geïntroduceerd wat in één klap het traag zijn van de taal grotendeels oploste, en met de ambities voor een JIT compiler in PHP8 lijkt qua snelheid niet alleen nog een grote stap mee gezet te gaan worden, maar zelfs het beperkte karakter van de taal een beetje te gaan vervallen.
En dit allemaal zonder het lage drempel gehalte echt te verliezen: je kan nog steeds de basis van PHP heel snel oppakken; je kan nu alleen ook doorgroeien tot een serieus goede programmeur, zonder van taal te hoeven switchen.
De toekomst van PHP ziet er dus rooskleurig uit: het blijft een makkelijke taal, maar levert voor de echte enterprise level websites nu al wel de opties om veilige, kwalitatieve code neer te zetten. En met de ambitie van PHP8 lijkt het er naar toe te gaan dat de taal het webdomein wel eens zou kunnen gaan overstijgen. Er liggen dus veel mogelijkheden voor goede ontwikkelaars om met behulp van deze taal in de toekomst steeds leukere dingen te gaan doen.