Door Xavier Ohole:
De vraag die je beter kan stellen is wie er nu nog PHP gebruikt! Personal Home Page geeft het al aan: taaltje voor amateurs die een websiteje willen maken. Een dergelijke taal zorgt altijd voor problemen door het zwakke fundament! Bah!
Onzin. Zoals met alles moet je weten wat je doet. Je begint als amateur en naarmate kennis en kunde vordert wordt je professioneel. Een programmeertaal is daarin alleen maar een middel, het is niet een 'taaltje voor amateurs' of professionals; hoe je het gebruikt maakt het dat. Ik zou mij meer zorgen maken over een amateur die denkt door bescherming vanuit de taal professioneel te zijn, want het is 'toch wel veilig'.
Door Xavier Ohole:
PHP is gewoon een ramp om mee te werken. Het mist consistentie, elke functie lijkt willekeurig samengesteld. Het ene moment gebruik je underscores, het volgende moment gebruik je camelCase. Bovendien is de documentatie vaak een puinhoop, en moet je door eindeloze discussies op forums waden om een simpel probleem op te lossen.
Onzin, dit kun je gewoon leren. En als je dat niet wil heb je goede ondersteuning in allerlei IDEs die jou precies vertellen waar wat hoort. Naast dat heb je hebt een website met uitleg. Als dat ook niet goed genoeg is, pak er een framework erbij die het voor jou abstraheert (noem een Zend Framework/Laminas, Laravel, Symphony) en het voor jouw begrip niet willekeurig doet.
Door Xavier Ohole:
En wat dacht je van de veiligheidslekken? PHP staat erom bekend dat het een nachtmerrie is op het gebied van security. Je moet constant op je hoede zijn voor SQL-injecties en XSS-aanvallen. Het feit dat zoveel populaire websites het nog steeds gebruiken is een blamage voor de industrie. Wat is er gebeurd met de vooruitgang in webontwikkeling?
Onzin. Je moet weten wat je doet en hoe het hoort.
Middelen tegen SQL injectie bestaan al 20 jaar in PHP (prepared statements met PDO, introductie in 2004), begrijp en gebruik die dan ook. In de meeste talen kun je nog steeds zelf SQL 'raw' queries samenstellen en daarmee risico lopen op injecties.
Kwestbaarheid voor XSS is inherent aan ontwikkelen van interactieve websites. Ook hier: kennis. Weet wat je doet, begrijp HTML, begrijp JavaScript, begrijp de kwetsbaarheden, weet hoe je een web server moet inrichten, hoe je die zo veilig mogelijk maakt, hoe je omgaat met gebruikersinput en de opslag en weergave daarvan. Dat is basiskennis onafhankelijk van de programmeertaal.
Wat betreft de gemelde kritieke kwetsbaarheid in PHP volgens CVE-2024-4577; dit gaat over een kwestbaarheid in de EXECUTABLE van PHP die gemaakt is in... C. Het ligt dus helemaal niet aan de PHP programmeertaal maar aan C of liever hoe de ontwikkelaars daar mee omgaan. C is notoir lastig met geheugenallocatie en pointers, maar niet onmogelijk om 'goed' te doen (zeer veel middelen voor). Hoe het 12 jaar lang onopgemerkt is, is dan wel bijzonder.
Door Xavier Ohole:
Laten we het ook even hebben over de performance. PHP is traag in vergelijking met modernere talen zoals Node.js of Python. Probeer maar eens een zware applicatie te draaien zonder dat je server het begeeft. Waarom zouden we nog steeds vasthouden aan een taal die zo duidelijk verouderd is?
Onzin. Oorspronkelijk misschien, met PHP puur als interpreted taal, maar tegenwoordig niet meer. Je hebt al vele jaren een opcache (vroeger via Zend en andere aanbieders, nu standaard) die PHP compileert naar byte code en het daarmee vele malen sneller maakt. Je hebt sinds PHP 8 er zelfs een JIT compiler voor. Je hebt oplossingen zoals FastCGI die sneller zijn dan een standaard Apache Httpd module. Je hebt platform specifieke optimalisaties. En... hoe je de applicatie in elkaar zet is essentieel, ongeacht taal, ook hier is weer kennis en kunde nodig. Cache wat je moet cachen.
Als je high volume wil, dan kan dat gewoon met PHP en bedrijven doen dat dan ook.
Door Xavier Ohole:
En dan heb ik het nog niet eens gehad over de community. De PHP-community staat bekend als een plek waar beginners de meeste input geven, en dat resulteert in een wildgroei aan slechte code en adviezen die gewoonweg gevaarlijk zijn om te volgen.
Elke community heeft een aandeel van gebruikers die slechte input leveren, hetzij door onkunde of verouderde kennis. Hoeveel ontwikkelaars doen een copy & paste van bijv. StackOverflow? In het algemeen is er een gebrek aan kennis, aandacht (want specifiek niche probleem) en moderatie (want er is wel wat beters te doen), dus zorg maar dat je als lezer begrijpt wat er staat en of het klopt of niet, ga er niet blind vanuit dat het DE oplossing is.
Door Xavier Ohole:
Kortom, PHP is een nachtmerrie voor elke serieuze ontwikkelaar. Tijd om deze relikwie uit het verleden achter ons te laten en over te stappen naar talen die daadwerkelijk geschikt zijn voor moderne webontwikkeling.
Nee.
Het lijkt mij dat je een opinie geeft gebaseerd op een indruk van PHP die je vele jaren geleden hebt gekregen als 'toerist'. Het is stemmingmakend en verre van genuanceerd. Dus gewoon "nee".