AGGIORNAMENTO E UPGRADE · CAKEPHP

CakePHP su PHP 8.
Dal ramo 2.x al 5.x.

Aggiorniamo le applicazioni CakePHP una versione principale alla volta, usando lo strumento ufficiale di upgrade dove esiste e intervenendo a mano dove serve una migrazione.

Per chi ha un’applicazione su CakePHP 1.3, 2.x, 3.x o 4.x e deve arrivare a un ramo supportato e a PHP 8. Pianifichiamo le tappe, proteggiamo la produzione e rilasciamo senza sorprese.

PERCORSO DI UPGRADE

Dal ramo che hai.
Al ramo supportato.

Tra 2.x e 3.x CakePHP cambia ORM, spazi dei nomi e struttura, quindi quel passaggio è una migrazione vera. Dalla 3.x in poi lo strumento ufficiale cakephp/upgrade automatizza molte modifiche, partendo sempre dall’ultima versione del ramo di origine.

  1. 01CakePHP 1.3PHP 4 e 5

    Ramo storico, da portare prima sulla 2.x.

  2. 02CakePHP 2.10PHP 5.4 – 7.4

    Fuori supporto. Verso la 3.x cambiano ORM, namespace e cartelle.

  3. 03CakePHP 3.10PHP 5.6 – 7.4

    Ultimo 3.x, punto di partenza dello strumento di upgrade verso la 4.x.

  4. 04CakePHP 4.6PHP 7.4 – 8.3

    Supporto di sicurezza terminato il 10 settembre 2026, base per la 5.x.

  5. 05CakePHP 5.4PHP 8.2 – 8.5

    Ramo attivo, aggiornato con le regole Rector di cakephp/upgrade.

VERSIONI E REQUISITI PHP

Versioni e PHP.
Ramo per ramo.

Requisiti e stato seguono la tabella delle versioni supportate pubblicata da CakePHP. Lo stato è quello di novembre 2026.

VersionePHP supportatoStato a novembre 2026
CakePHP 1.3PHP 4.3.2 o superiore, PHP 4 e 5Fuori supporto
CakePHP 2.xPHP 5.4 – 7.4Fuori supporto
CakePHP 3.xPHP 5.6 – 7.4Fuori supporto
CakePHP 4.xPHP 7.2 – 8.3Supporto di sicurezza terminato il 10 settembre 2026
CakePHP 5.0 – 5.2Da PHP 8.15.2 ancora supportata
CakePHP 5.3 – 5.4Da PHP 8.2, fino a 8.5Supportato, ramo corrente

Fonti: Versioni supportate di CakePHP · Guida all’aggiornamento a CakePHP 5.0 · Strumento ufficiale di upgrade. La matrice dei rami di PHP con le distribuzioni Linux è nella pagina Versioni PHP.

COSA TROVIAMO DI SOLITO

Cosa blocca l’upgrade.
E come lo sblocchiamo.

CakePHP documenta bene ogni salto di versione. I blocchi nascono soprattutto sui rami vecchi e quando le deprecazioni non sono state corrette per tempo.

Da 2.x a 3.x è una migrazione

La 3.x introduce un nuovo ORM, gli spazi dei nomi e una struttura di cartelle diversa. Lo strumento della 3.0 copre solo le modifiche meccaniche, quindi modelli, query e viste vanno riscritti con un piano per sezioni.

Lo strumento parte dall’ultima minore

cakephp/upgrade funziona solo se l’applicazione è sull’ultima versione del ramo di origine, la 3.x per andare alla 4.0 e la 4.x per andare alla 5.0. Allineiamo prima l’applicazione all’ultima minore e correggiamo le deprecazioni.

Tipi più rigidi nella 5.x

CakePHP 5 adotta tipi di unione e mixed, che cambiano molte firme dei metodi. Applichiamo le regole Rector cakephp50 e chronos3 e rivediamo a mano i punti in cui mancano tipi o docblock.

Plugin non aggiornati

Molti progetti usano plugin che si fermano a un ramo vecchio di CakePHP. Cerchiamo la versione compatibile o un sostituto mantenuto, oppure portiamo il codice necessario dentro l’applicazione.

PHP da aggiornare insieme

CakePHP 5.0 richiede almeno PHP 8.1 e dalla 5.3 serve almeno PHP 8.2. Coordiniamo ogni salto del framework con quello di PHP, così l’applicazione resta su una combinazione provata.

IL METODO

Il nostro intervento.
Passo dopo passo.

Se la migrazione richiede tempo, nel frattempo teniamo protetto il PHP in uso con il backport delle patch di sicurezza.

  1. 01INVENTARIO

    Inventario e matrice

    Censiamo versione di CakePHP, plugin, librerie Composer e versione di PHP. Ne ricaviamo una matrice di compatibilità e il numero di tappe necessarie fino alla 5.x.

  2. 02STAGING

    Ambiente di prova reale

    Prepariamo un ambiente di prova con l’applicazione reale e una copia dei dati. Lì attiviamo tutte le deprecazioni ed eseguiamo cakephp/upgrade, rivedendo ogni modifica.

  3. 03UPGRADE

    Una major alla volta

    Saliamo una versione principale alla volta, passando dall’ultima minore di ogni ramo. Dopo ogni tappa eseguiamo i test sui percorsi critici e rilasciamo se tutto è in ordine.

  4. 04RILASCIO

    Rilascio e ponte di sicurezza

    Rilasciamo con Ansible e un piano di rollback provato. Se le tappe richiedono mesi, il backport delle patch di sicurezza protegge il PHP in uso nel frattempo.

DOMANDE FREQUENTI

Prima di iniziare.

Le domande che ci fanno più spesso su CakePHP e PHP.

CakePHP 4 è ancora supportato?

Secondo la tabella ufficiale, il supporto di sicurezza di CakePHP 4.x è terminato il 10 settembre 2026. Il ramo supportato è la 5.x, con PHP da 8.1 a 8.5 a seconda della versione minore. Chi è sulla 4.x ha già tutto pronto per lo strumento di upgrade verso la 5.0.

Lo strumento ufficiale fa tutto il lavoro?

Automatizza molte modifiche ripetitive con Rector, come firme dei metodi e nomi dei file. Le dipendenze in composer.json, i plugin e la logica dell’applicazione vanno comunque aggiornati e provati. Rector funziona meglio dove il codice ha tipi o docblock.

Siamo su CakePHP 2.x: conviene riscrivere?

Il passaggio alla 3.x richiede già di riscrivere modelli e accesso ai dati, quindi va trattato come una migrazione. Dopo l’inventario valutiamo se arrivare alla 5.x per tappe o costruire direttamente sulla 5.x conservando logica e database. Nel frattempo proteggiamo il PHP in uso con il backport.

IL PROSSIMO PASSO

Aggiorniamo
il tuo progetto.

Indicaci versione della piattaforma, versione di PHP e sistema operativo. Ti risponderemo con una prima valutazione del percorso di upgrade e di cosa serve per arrivarci.

Richiedi una valutazione
PHP LEGACY · MANAGED SERVER S.R.L.info@phplegacy.it +39 02 5656 9681

Lunedì – venerdì · 09:30 – 19:30

Urgenza in corso? Reperibilità H24
+39 340 985 4556 ↗