Разработчику. Сборник рецептов PHP
Задавайте вопросы

Функции

Вернуться назад

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

Работая с функцией, вы передаете ей некоторое количество аргументов и получаете обратно значение:

// складываем два числа
function add($a , $b) {
        return $a + $b;
}

$total = add(2 , 2);     // 4

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

Не обязательно предварительно объявлять функцию перед ее вызовом. PHP анализирует весь файл до его выполнения, поэтому можно произвольно размещать объявления функций и их вызовы. Однако в PHP запрещено переопределение функций. Если PHP обнаруживает функцию с именем ранее найденной функции, то он выдает фатальную ошибку и «умирает».

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

Эта глава поможет вам разрешать проблемы такого рода с помощью PHP. Мы начнем с подробного рассмотрения различных способов передачи аргументов в функцию. Примеры от "Доступ к параметрам функций" по "Создание функции, принимающей переменное количество аргументов" охватывают передачу аргументов по значению, по ссылке и как именованных параметров; присваивание параметрам значений по умолчанию; функции с переменным количеством параметров.

Следующие четыре примера полностью посвящены возвращению значений из функции. Пример "Возвращение значений по ссылке" рассматривает возвращение значения по ссылке, Пример "Возвращение более одного значения" охватывает возвращение более одной переменной, пример "Пропуск определенных возвращаемых значений" описывает, как пропускать определенные возвращаемые значения, а пример "Возвращение информации об ошибке" рассказывает о наилучшем способе получения информации об ошибках в работе функции и ее проверки. Последние три рецепта показывают, как вызывать переменные функции, решать проблемы переменных областей видимости и динамически создавать функцию.

Вернуться назад

Рейтинг@Mail.ru

Яндекс.Метрика

Индекс цитирования

Рейтинг Сайтов ДОСКИ.РУ