Door Bitje-scheef: Door Xavier Ohole: Door Anoniem: Ach het is maar een PHP website toch? Alhoewel er zijn in Nederland nog een paar zorginstellingen met een PHP product.
PHP is geen programmeertaal/platform dat je voor een professionele toepassing zou moeten/mogen gebruiken.
Mwah, ben ik het niet helemaal mee eens. Kwaliteit van de plugins en vooral de updates hiervan, is soms wel een dingetje.
Met 20+ jaar PHP achter de rug kan ik je vertellen dat PHP geen serieuze taal is.
Zo is het nooit gemaakt. Het is alsof je begint met iets dat niet werkt als taal (omdat het een C-toolkit is) en dat steeds verder uitwerkt tot iets dat lijkt op een serieuze taal, maar vol technische valkuilen blijft zitten.
Het is ontzettend makkelijk om snel iets dat werkt in elkaar te zetten, en tegelijkertijd ontzettend moeilijk om het echt goed en veilig te doen, en te blijven doen.
Als je alleen al kijkt naar de omloopsnelheid is van main (of minor?) versies van PHP, dan moet je al je software binnen 3 jaar weer ombouwen omdat elke minor versie breaking changes introduceert. (https://www.php.net/supported-versions.php)
En als je wilt weten hoe bepaalde functies in PHP werken, dan verzand je in een diep moeras van een veelheid aan compilatie- en configuratieopties, die ook nog eens wel of niet thread safe en 'run-time' gewijzigd kunnen worden en verschillen per omgeving omdat vaak parameters ongezien doorgeschoven worden naar aanwezige libraries op het systeem.
In plaats van PHP elke keer wat beter te maken, maken ze PHP liever sneller en meer sexy met nog meer onoverzichtelijke features.
Bovenop dat wankele PHP, komt Wordpress. Ze stellen zichzelf voor dat ze heel wat zijn, noemen het hoofdonderdeel van hun raamwerk zelfs 'mainframe'. Door de tijd heen zijn er zo veel security-gaten gevonden dat het basissysteem inmiddels redelijk veilig is. Maar bijvoorbeeld de template functies zijn complete spaghetti. Er is zelfs een complete 'Codex' geschreven (https://codex.wordpress.org) waardoor een sterveling door de bomen het bos niet meer ziet. Er worden allerlei gratis in elkaar gezet die komen met allerlei troep zoals lettertypen van Google en JavaScript libraries op CDN's van derden, zodat je bezoekers al default en buiten GDPR/AVG om getracked worden in de VS nog voordat je met je website al een privacy-verklaring hebt opgesteld.
En weer bovenop dat beroerde Wordpress heb je een hele berg aan plug-ins, die heel handig lijken maar ook lang niet altijd door professionals worden geschreven, laat staan onderhouden. En waarvoor auteurs nog geld willen zien ook. Nu heeft bijvoorbeeld OWASP al een hele tijd een handige Cheat Sheet over hoe je SQL injectie kan tegengaan, met prepared statements (https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html) maar ondanks dat blijft men prutsen, en staat SQL injection (CWE-89) nog altijd op #3 in de top 25 van meest voorkomende zwakheden in 2023 (https://cwe.mitre.org/top25/archive/2023/2023_stubborn_weaknesses.html)
Het is allemaal heel lief van ze dat ze het open source maken, maar PHP is zo 'broken beyond repair' dat het niet uitmaakt hoe populair het is. Het is gewoon niet meer van deze tijd. De enige remedie is om over te gaan naar een echte programmeertaal.