Оглавление
Локальные переменныеГлобальные переменныеСтатические переменныеПараметры функцийИтог
Области видимости переменных в PHP
Область видимости переменной определяет, в каких частях программы к ней можно получить доступ. В PHP выделяют четыре типа областей видимости:
- Локальная
- Глобальная
- Статическая
- Параметры функций
Локальные переменные
Если переменная объявлена внутри функции, доступ к ней возможен только из этой функции. Такая переменная называется локальной.
Пример:
Внутри функции
say() создаётся переменная $message. Она локальна: извне функции к ней обратиться нельзя. Переменная существует только во время выполнения функции и исчезает после её завершения.Глобальные переменные
Переменная, объявленная вне функций, считается глобальной. Она доступна во всём скрипте, кроме тела функций.
Пример:
В этом примере две переменные с именем
$message: глобальная (вне функции) и локальная (внутри). Несмотря на одинаковое имя, это разные переменные.Чтобы обратиться к глобальной переменной внутри функции, используйте ключевое слово
global:Важно: использование глобальных переменных считается плохой практикой.
Суперглобальные переменные
В PHP есть набор встроенных суперглобальных переменных, доступных в любой части скрипта. Они содержат информацию о среде выполнения PHP:
$GLOBALS- Массив всех глобальных переменных$_SERVER- Данные о сервере и окружении$_GET- Данные из GET-запросов$_POST- Данные из POST-запросов$_COOKIE- Данные из HTTP-куки$_FILES- Данные о загруженных файлах$_ENV- Информация о среде выполнения$_REQUEST- Данные из HTTP-запроса$_SESSION- Переменные сессии
Статические переменные
Статическая переменная сохраняет своё значение между вызовами функции и доступна только внутри неё. Для объявления используйте ключевое слово
static.Пример:
При каждом вызове значение
$counter увеличивается на единицу.Параметры функций
Параметры функций являются локальными и доступны только внутри самой функции.
Пример:
Параметр
$items виден только внутри функции sum().Итог
В PHP выделяют четыре типа областей видимости переменных: локальная, глобальная, статическая и параметры функций.

