Alten Code mit neuen PHP-Versionen benutzen
Dadurch
dass
PHP
eine
immer
beliebtere
Skriptsprache
ist
,
gibt
es
immer
mehr
Quellen
,
die
Ihnen
Code-Listings
zur
Verfügung
zu
stellen
.
Die
PHP-Entwickler
haben
versucht
,
den
größten
Teil
der
Sprache
abwärtskompatibel
zu
halten
.
Das
bedeutet
,
dass
ein
Skript
,
das
für
eine
ältere
PHP-Version
geschrieben
wurde
,
(
im
Idealfall
)
ohne
Änderungen
auch
unter
einer
neueren
PHP-Version
läuft
.
In
der
Praxis
sind
aber
meist
einige
Änderungen
nötig
.
Zwei
der
wichtigsten
aktuellen
Änderungen
,
die
alten
Code
betreffen
,
sind
:
-
Die
Missbilligung
der
alten
$HTTP_*_VARS
-Arrays
(
die
global
gemacht
werden
mussten
,
wenn
man
sie
innerhalb
einer
Funktion
nutzen
wollte
)
.
In
PHP
4.1.0
wurden
die
folgenden
autoglobalen
Arrays
eingeführt
:
$_GET
,
$_POST
,
$_COOKIE
,
$_SERVER
,
$_ENV
,
$_REQUEST
und
$_SESSION
.
Die
älteren
$HTTP_*_VARS
-Arrays
,
wie
$HTTP_POST_VARS
,
existierten
bereits
seit
PHP
3
und
sind
auch
immer
noch
verfügbar
.
-
Externe
Variablen
werden
standardmäßig
nicht
mehr
im
globalen
Namensraum
registriert
.
Mit
anderen
Worten
,
seit
PHP
4.2.0
ist
off
die
Standard-Einstellung
für
die
PHP-Direktive
register_globals
.
Die
empfohlene
Methode
,
auf
diese
Werte
zuzugreifen
,
ist
,
die
oben
genannten
autoglobalen
Arrays
zu
verwenden
.
Ältere
Skripte
,
Bücher
und
Tutorials
gehen
eventuell
davon
aus
,
dass
diese
Einstellung
auf
on
Ältere
Skripte
,
Bücher
und
Tutorials
gehen
eventuell
davon
aus
,
dass
diese
Einstellung
auf
on
steht
.
Wäre
die
Einstellung
on
,
wäre
die
Variable
$id
aus
der
URL
http
:
/
/www.example.com
/
foo.php?id=42
verfügbar
.
Unabhängig
davon
,
ob
on
oder
off
,
ist
immer
$_GET[
'id'
]
verfügbar
.
Für weitere Details über diese Änderungen siehe die Seite über
vordefinierte
Variablen
und die Links dort.