Шаг 35.
Основы языка PHP.
Область видимости переменных

    На этом шаге мы рассмотрим область видимости переменных.

    При активной работе с пользовательскими функциями вы обязательно столкнетесь с проблемой области видимости переменных. Что это такое, лучше пояснить на примере:

<?php
function inc()
   {
   $num++;
   }
$num = 1;
inc();        // вызываем функцию
echo $num;    // выведет 1
?>

    Результатом выполнения этой программы будет вывод числа 1. Другими словами, расположенные в теле функции и в основной программе переменные совершенно не связаны друг с другом, хотя имеют одинаковые имена. В этом случае говорят, что переменная, находящаяся внутри тела функции, имеет локальную область видимости, а переменная, которая располагается в основной программе, - глобальную. Локальные переменные объявляются внутри тела функции и недоступны извне. Глобальные переменные могут объявляться как в основной программе, так и в теле функции, но делается это с помощью специального оператора global. Например:

<?php
function inc()
   {
   global $num;
   $num++;
   }
$num = 1;
inc();        // вызываем функцию
echo $num;    // выведет 2
?>

    В этом случае выводится число 2, так как переменная $num в теле функции имеет глобальную область видимости.

    На следующем шаге мы рассмотрим время жизни переменных.




Предыдущий шаг Содержание Следующий шаг