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 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.
Zurück | Zum Anfang | Weiter |
Formulare verarbeiten | Nach oben | Und weiter? |