Использование старых программ с новыми версиями PHP
Сейчас PHP является популярным языком сценариев(скриптов) и поэтому появляется все
больше и больше распространяемых кусочков кода, которые вы можете использовать в
своих скриптах. В большинстве случаев разработчики PHP старались сохранить
совместимость с предыдущими версиями так, чтобы код, написанный для более старой
версии, работал (в идеале) и с новыми версиями языка без каких-либо изменений. Однако
случается так, что изменения все-таки необходимы.
Есть два важных изменения, которые влияют на старые программы:
-
С PHP 5.4.0, старые массивы $HTTP_*_VARS удалены.
Следующие суперглобальные массивы
были добавлены в PHP » 4.1.0:
$_GET, $_POST,
$_COOKIE, $_SERVER,
$_FILES, $_ENV,
$_REQUEST, и $_SESSION.
-
Внешние переменные больше не глобализуются по умолчанию. Другими
словами, начиная с версии PHP
» 4.2.0,
директива register_globals
в php.ini по умолчанию отключена ("off").
Рекомендуемый метод доступа к таким переменным - суперглобальные
массивы, описанные выше. Более старые программы, книги и руководства
могут считать, что данная директива включена ("on").
К примеру, если бы эта директива была включена ("on"),
такой скрипт мог бы использовать переменную $id,
поступившую из строки URL http://www.example.com/foo.php?id=42.
Вне зависимости от значения данной директивы, переменная $_GET['id']
будет всегда доступна.
Для дополнительной информации касательно изменений, связанных с
переменными, смотрите раздел "
Предопределенные переменные"
и ссылки этого раздела.