Categoria

Pagina 2 di 4

PHP: il linguaggio che regge una fetta enorme del web, usato come si deve

Con la 8.4 PHP è un linguaggio tipizzato, veloce e con un ecosistema ingegneristicamente maturo, ben lontano dall'idea di "linguaggio di WordPress", e la 8.5 continua a spingerlo in avanti. Lo uso da oltre vent'anni, ho attraversato ogni major dalla 4.x alla 8.x, e in questa categoria porto il criterio con cui si scrive PHP destinato a restare in produzione per anni.

Molti articoli parlano della modernità che conta davvero. Enums, property hooks, lazy objects, fibers, tipizzazione stretta e OPcache cambiano il modo di modellare un dominio e di reggere il carico. Scrivo di come si usano per rendere il codice più leggibile e più veloce, e di quando una feature nuova è solo zucchero sintattico che non vale il rischio di adottarla.

Altri affrontano la realtà del codice legacy. Gran parte del PHP che gira nelle aziende è una base 5.x o 7.x che qualcuno deve tenere viva, mettere in sicurezza e portare avanti senza fermare il servizio. Qui l'esperienza pesa più della teoria, dal porting delle vecchie funzioni deprecate alla gestione dei cambi di comportamento silenziosi fra una versione e l'altra.

Poi la sicurezza come parte del linguaggio, pensata dal primo giorno: crittografia fatta con libsodium, sessioni difese da fixation e hijacking, upload validati in profondità, JWT implementati senza le trappole classiche. E sullo sfondo il capitolo che sta cambiando il mestiere: PHP nell'era dell'AI, dal debugging assistito alla validazione dell'output dei modelli.

Se hai un progetto PHP da modernizzare o un backend da irrobustire, guarda come lavoro sui progetti PHP senior oppure scrivimi per una consulenza mirata.

Quasi mai il problema è il linguaggio. Conta come lo usi, in che contesto, e se chi lo scrive sa cosa sta facendo.

PHP 8 Enums: sostituire le costanti di classe e i magic strings nei domini di business

PHP 8 Enums: sostituire le costanti di classe e i magic strings nei domini di business Ogni codebase PHP legacy che eredo ha la stessa peste: costanti integer o stringhe magiche per rappresentare stati di business. ORDINE_STATO_1, ORDINE_STATO_2. Con PHP 8 Enums, ho modernizzato un sistema ordini trasformando 40 costanti sparse in enum tipizzati con metodi di dominio. Il codice è diventato leggibile. Continua a leggere
Ultima modifica:

Dependency injection avanzato in PHP 8: costruire servizi testabili e sostituibili

Dependency injection avanzato in PHP 8: costruire servizi testabili e sostituibili La dependency injection è il pattern che più di ogni altro determina la testabilità del codice PHP. Vi mostro i pattern avanzati che uso in progetti complessi: constructor promotion di PHP 8, binding a interfaccia, lazy proxy per servizi costosi e come scrivere test che non dipendono dall'implementazione concreta. Continua a leggere
Ultima modifica:

Sicurezza e Validazione in PHP: prevenire gli attacchi

Sicurezza e Validazione in PHP: prevenire gli attacchi La vecchia ricetta della "classe di sicurezza" che ripulisce GET e POST all'ingresso non protegge più nulla: è un anti-pattern che dà falsa sicurezza. La doctrine corretta nel 2026 è netta: si valida l'input al confine con una logica di allowlist e si escapa l'output in base al contesto in cui finisce. Vediamo come si fa davvero, con filter_var, prepared statement, htmlspecialchars e una Content Security Policy. Continua a leggere
Ultima modifica:

XSS stored nel 2025: come identificarlo, sfruttarlo e costruire difese efficaci in PHP

XSS stored nel 2025: come identificarlo, sfruttarlo e costruire difese efficaci in PHP Lo XSS stored che ho trovato in un CMS proprietario di un cliente media non era ovvio: si attivava solo in un campo amministrativo raramente utilizzato. Il payload sopravviveva a tre livelli di sanitizzazione perché ognuno usava una libreria diversa. Vi mostro la catena di bypass e come costruire una CSP che regge. Continua a leggere
Ultima modifica:

CodeIgniter vs Laravel nel 2026: quando una PMI deve davvero migrare e come farlo senza fermarsi

CodeIgniter vs Laravel nel 2026: quando una PMI deve davvero migrare e come farlo senza fermarsi CodeIgniter 3 è in maintenance-only, PHP 8.1 ha raggiunto EOL il 31 dicembre 2025 e il JetBrains State of PHP 2024 stima 61% Laravel vs 11% CodeIgniter. Per le PMI con applicativi CI3 in produzione il problema non è più "se" migrare ma "come" farlo senza fermare il business. Questo articolo confronta CI3, CI4 e Laravel 12 con un approccio operativo: strangler pattern, route bridge e cutover graduale. Continua a leggere
Ultima modifica:

Strumenti PHP utili

Tool gratuiti che uso e che possono servirti mentre lavori su PHP:

Audit del composer.lock, Regex tester, JSON formatter, Generatore UUID.