базовый курс

ГРУППА КУРСА

Функции

Что такое функция

Функция - это часть программы, оформленная специальным образом. Внутри неё может быть любое количество строк. Когда функция вызывается на исполнение, эти строки выполняются. Она может быть вызвана много раз из любого места программы, в том числе, из других функций. Обычно функции используются для того, чтобы выполнить один и тот же код в разных частях программы. Также иногда большие скрипты разделяют на несколько функций. Кроме того, они могут быть использованы и с другими целями.

Создание функции

Для создания функции используется ключевое слово function, после которого пишется имя функции. В скобках указываются параметры. Если параметров нет, то скобки, всё равно, нужны. Далее в фигурных скобках пишется код, который выполняется при вызове функции.

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

+
1
2
<?php
header('Content-type: text/html; charset=utf-8');
3
4
5
6
7
function inform ()
  {
  echo 'Это функция';
  }
inform ();

В 7 строке функция вызывается на исполнение.

Параметры функции

Параметры функции - это данные, которые она получает при вызове на исполнение. При каждом запуске эти данные могут различаться. Соответственно и результат работы функции может быть разным. Параметры указываются в скобках и используются как обычные переменные. Создадим функцию, которая будет получать текст в виде параметра и выводить этот текст:

8
9
10
11
12
13
function par ($n)
  {
  echo '<br>'.$n;
  }
par('Вызов функции');
par('Ещё один вызов функции');

Параметров может быть несколько, они перечисляются через запятую.

Параметру можно задать значение по умолчанию. Если значение не передано при запуске функции, то используется это значение.

8
function par ($n = 'Значение')

Если значения по умолчанию заданы не всем параметрам, то сначала нужно указаывть те, которым не установлено значение, а потом те, которым установлено.

Возврат значения

Функция может вернуть значение. Это значение может быть использовано в дальнейшей работе программы. Для этого в функции должна содержаться языковая конструкция return. Она не только возвращает значение, но и прекращает работу функциии, даже если не все строки выполнены. Поэтому return часто используется для завершения работы функции.

Создадим функцию, которая получает число, умножает его на 2 и возвращает результат:

14
15
16
17
18
function umn ($x)
  {
  return $x * 2;
  }
echo '<br>'.umn(73);

Область видимости переменных

Если переменная создана вне функций, то она существует на уровне всего скрипта, то есть на глобальном уровне. С ней можно работать в любом месте программы, в том числе, в функциях. Но если переменная создана внутри какой-то функции, то это локальная переменная. Она видна только внутри этой функции и больше нигде. За пределами функции невозможно ни получить ни изменить значение такой переменной и вообще ничего с ней сделать. Пример:

19
20
21
22
function use_var () {
  $f = 5;
  }
echo '<br>Переменная '.$f;

Переменная $f создана в функции и ей присвоено значение. Но вывсти это значение за пределами функции невозможно, потому что переменная локальная, а на глобальном уровне такой переменной нет.

У PHP есть особенность. Внутри функций не все глобальные переменные доступны. Для этого в функции нужно использовать ключевое слово global и указать глобальные переменные, к ктороым должен быть доступ. Пример:

14
15
16
17
18
19
20
$myv = 'Глобальная переменная';
function get_gl ()
  {
  global $myv;
  echo '<br>'.$myv;
  }
  get_gl();

Если нужно работать с несколькими переменными, то они перечисляются через запятую. Также можно вместо переменных использовать суперглобальный массив $GLOBALS, который содержит значения глобальных переменных.