L'uso di vecchi codici con le nuove versioni di PHP
Da quando il PHP è divenuto un linguaggio di scripting popolare, esistono
più fonti che producono listati di codice che si possono adoperare nei propri scripts.
La maggioranza degli sviluppatori del PHP ha cercato di renderlo compatibile con le versioni precedenti,
perciò uno script creato per una vecchia versione del PHP dovrebbe girare senza modifiche (in teoria) in una più
recente. In pratica, spesso possono servire delle correzioni.
Ecco due delle più importanti modifiche apportate al vecchio codice:
-
I vecchi arrays $HTTP_*_VARS non sono più disponibili a partire da
PHP 5.4.0.
In PHP » 4.1.0
furono introdotti i seguenti autoglobal arrays:
Essi sono: $_GET, $_POST,
$_COOKIE, $_SERVER,
$_FILES, $_ENV,
$_REQUEST, e $_SESSION.
-
Le variabili esterne non vengono più registrate nel global scope per default.
In altre parole, da PHP
» 4.2.0 la direttiva PHP
register_globals è
off per default in php.ini. Il metodo consigliato per accedere
a questi valori è quello che fa uso degli array autoglobali suddetti. Scripts, libri
e tutorials più vecchi possono contare su questa
direttiva su on. Se essa è on, per esempio, qualcuno
potrebbe usare $id dall'URL
http://www.example.com/foo.php?id=42. La variabile,
$_GET['id'] sarebbe disponibile indifferentemente del fatto che sia on od off.
Per ulteriori dettagli su queste modifiche, vedere la sezione sulle
variabili predefinite
ed i links ad essa connessi.