Javascript debugger
Website design
↑
Now that PHP has grown to be a popular scripting language, there are a lot of public repositories and libraries containing code you can reuse. The PHP developers have largely tried to preserve backwards compatibility, so a script written for an older version will run (ideally) without changes in a newer version of PHP. In practice, some changes will usually be needed.
Two of the most important recent changes that affect old code are:
$HTTP_*_VARS
arrays
(which need to be indicated as global when used inside a function or
method). The following
superglobal arrays
were introduced in PHP » 4.1.0.
They are: $_GET
, $_POST
,
$_COOKIE
, $_SERVER
,
$_FILES
, $_ENV
,
$_REQUEST
, and $_SESSION
. The
older $HTTP_*_VARS
arrays, such as
$HTTP_POST_VARS
, still exist as they have since PHP 3.
As of PHP 5.0.0, the long PHP
predefined variable
arrays may be disabled with the
register_long_arrays
directive.
php.ini
. The preferred
method of accessing these values is via the superglobal arrays mentioned
above. Older scripts, books, and tutorials may rely on this
directive being on. If it were on, for example, one could use
$id
from the URL
http://www.example.com/foo.php?id=42
. Whether on
or off, $_GET['id']
is available.
For more details on these changes, see the section on predefined variables and links therein.