Quanto è compatibile all'indietro php 5 con php 4?
-
20-08-2019 - |
Domanda
Lavoro su una base di codice scritta in php 4. Mi piacerebbe passare attraverso il processo di aggiornamento del codice a php 5 (l'ultima versione fornita dal mio host). Mi chiedo se qualcun altro abbia vissuto un'esperienza di aggiornamento simile e possa condividere ciò che ci sono / insidie, cosa deve cambiare nel mio codice, cosa non è retrocompatibile tra le due versioni?
Soluzione
Dai un'occhiata alla guida per la migrazione da PHP 4 a 5 . Il tuo codice PHP 4 esistente dovrebbe funzionare ancora, sebbene ci siano alcune modifiche incompatibili con le versioni precedenti .
Altri suggerimenti
Consulta la Migrazione da PHP 4 a PHP 5.0.x pagina. La sezione più importante è Modifiche incompatibili all'indietro . Fintanto che non hai usato classi e oggetti nella tua precedente applicazione, array_merge è probabilmente l'unico grosso problema che puoi incontrare.
NON abilitare la zend.ze1_compatibility_mode
variabile di configurazione.
Nella mia esperienza, la principale fonte di dolore è quando il codice si basa su funzionalità che erano già state deprecate in PHP 4. Quelle sono in genere:
- Registra globali
- Citazioni magiche
- Gestione delle sessioni vecchio stile, ovvero session_register ()
Non esiste ricerca e sostituzione che possano aiutarti a identificare tali elementi. La sua rimozione porta a tonnellate di guasti difficili da individuare. La loro conservazione porta a un codice non mantenibile. L'impostazione di un error_reporting aggressivo porta a un livello infinito flusso di avvisi.