Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Verso PHP 5: retrocompatibilità  attiva? No, grazie

PHP 5 fornisce una nuova direttiva nel PHP.ini utile per forzare Zend Engine ad emulare PHP 4: scoprite come comportarvi in questo caso.
PHP 5 fornisce una nuova direttiva nel PHP.ini utile per forzare Zend Engine ad emulare PHP 4: scoprite come comportarvi in questo caso.
Link copiato negli appunti

Sviluppatori di PHP 5, datemi almeno un motivo per tornare alla versione 4... anzi, un paio! Io, e lo dico con estrema sincerità , non ne ho trovati, salvo forse quello più "futile", ovvero quello di dover progettare la migrazione di qualche piattaforma. Ma questa è un'altra storia.

Come anticipato nel post d'apertura, inizia il percorso verso PHP 5.
Il primo argomento che vorrei affrontare è una nuova direttiva del nuovo PHP.ini, il file di configurazione di PHP.

Tra le 5 novità , zend.ze1_compatibility_mode è senz'altro quella maggiormente interessante ai nostri fini. Disattivata di default, abilitandola forzerete Zend Engine II, parte di PHP 5, a comportarsi come il fratello minore Zend Engine 1 in alcune situazioni, emulando PHP 4.

Attenzione, è fondamentale considerare che il comportamento di Zend Engine influenza solo alcune situazioni precise, come indicato. Nello specifico

  • Ripristina il passaggio degli oggetti per valore, forzando la clonazione dei parametri nelle funzioni
  • Ripristina la comparazione degli oggetti per caratteristiche (PHP 4) e non per riferimento (PHP 5)
  • Ripristina il casting implicito degli oggetti di PHP 4

Se qualcuno di questi punti vi sfugge niente paura, saranno oggetti di post futuri.

Come avrete notato, il suo comportamento influenza quasi esclusivamente la modalità  con il quale PHP 5 gestisce la manipolazione di oggetti. E tutto il resto?

Tutto il resto rimarrà  inviariato, quindi array_merge() continuerà  a non accettare come parametro altro che array anche se zend.ze1_compatibility_mode è attivata. In poche parole, vi troverete di fronte ad un ibrido che non è né PHP 4 né PHP 5.

Un consiglio, non abilitate questa opzione ma preoccupatevi piuttosto di comprendere le dinamiche di PHP 5 ed attivarvi al fine di aggiornare quanto sviluppato in PHP 4.

Ah, ovviamente non mancate di seguire le prossime puntate! ;)

Ti consigliamo anche