Курс "Язык программирования PHP"
Шрифт:
Как видим, комбинации функций func_num_args, func_get_arg и func_get_args используется
Использование переменных внутри функции
Глобальные переменные
Чтобы использовать внутри функции переменные, заданные вне нее, эти переменные нужно объявить как глобальные. Для этого в теле функции следует перечислить их имена после ключевого слова global:
В результате работы этого скрипта получим:
Когда переменная объявляется как глобальная, фактически создается ссылка на глобальную переменную. Поэтому такая запись эквивалентна следующей (массив GLOBALS содержит все переменные, глобальные относительно текущей области видимости):
Это
Статические переменные
Чтобы использовать переменные только внутри функции, при этом сохраняя их значения и после выхода из функции, нужно объявить эти переменные как статические. Статические переменные видны только внутри функции и не теряют своего значения, если выполнение программы выходит за пределы функции. Объявление таких переменных производится с помощью ключевого слова static:
Статической переменной может быть присвоено любое значение, но не ссылка.
Возвращаемые значения
Все функции, приведенные выше в качестве примеров, выполняли какие-либо действия. Кроме подобных действий, любая функция может возвращать как результат своей работы какое-нибудь значение. Это делается с помощью утверждения return. Возвращаемое значение может быть любого типа, включая списки и объекты. Когда интерпретатор встречает команду return в теле функции, он немедленно прекращает ее исполнение и переходит на ту строку, из которой была вызвана функция.
Например, составим функцию, которая возвращает возраст человека. Если человек не умер, то возраст считается относительно текущего года.
В этом примере можно было и не использовать функцию return, а просто заменить ее функцией вывода echo. Однако если мы все же делаем так, что функция возвращает какое-то значение (в данном случае возраст человека), то в программе мы можем присвоить любой переменной значение этой функции:
Дорога ветров
3. Орден Манускрипта
Фантастика:
фэнтези
рейтинг книги
Стихотворения
Поэзия:
поэзия
рейтинг книги
Гримуар темного лорда II
2. Гримуар темного лорда
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Погоня
1. Исаак Белл
Детективы:
прочие детективы
рейтинг книги
Заповедник гоблинов (сборник)
Фантастика:
научная фантастика
рейтинг книги
Басилевс
Приключения:
исторические приключения
рейтинг книги
Прайм. Рунный призрак
3. Легенда
Фантастика:
фэнтези
боевая фантастика
рпг
рейтинг книги
Повелитель снов
Фантастика:
фэнтези
рейтинг книги