Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Vtoraya_chast_uchebnika_po_WWW_Okonchat_variant...doc
Скачиваний:
33
Добавлен:
27.09.2019
Размер:
6.06 Mб
Скачать

1.4.3.5. Функции в php – введение в тему

Определение функции в языке программирования

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

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

Вычисляемое кодом функции значение чаще всего связывается с именем функции. Поэтому говорят, что функция возвращает значение через своё имя.

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

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

Различают стандартные (или встроенные в язык) функции, вызов которых происходит по их именам, и пользовательские функции, которые может написать любой программист. Код функции вычисляет значение, которое связывается с именем функции. Говорят, что это значение «возвращается» функцией и передаётся через имя функции.

Функции в PHP

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

На начальном этапе приходится обращаться к этой теме, поскольку уже достаточно обычная для языка программирования процедура - определение констант - в PHP проводиться с помощью стандартной ( встроенной) функцией define(). Поэтому в данном разделе приводятся базовые сведения из этой области, и описываются некоторые функции, имеющие отношение к теме раздела 4.4.

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

Для создания функции надо записать программный код, определяющий эту функцию, и сделать это по определённым правилам. Создание такого фрагмента называется определением функции.

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

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

Определение функции обычно состоит из трех частей:

  • имени функции;

  • круглых скобок, в которых перечисляются необязательные входные параметры, разделенные запятыми;

  • тела функции, заключенного в фигурные скобки.

Обобщенный синтаксис создаваемой функции PHP выглядит так:

function имя_функции ([$параметр1, $параметр2, .... $параметрN])

{

тело функции

}

Имя функции должно подчиняться условиям, приведенным для идентификаторов в разделе 1.4.3.3. Однако, знак $ не нужен. После имени функции следуют обязательные круглые скобки, в которые заключается необязательный список входных параметров [$параметр1, $параметр2, .... $параметрN].

Вследствие относительно либеральных принципов определения переменных, в PHP указывать тип входных параметров не нужно. Хотя такой подход имеет свои преимущества, следует помнить, что механизм PHP не проверяет аргументы на соответствие тем типам, которые должны обрабатываться функцией. Случайные ошибки в использовании входных параметров могут привести к неожиданным последствиям (чтобы убедиться в том, что параметр относится к нужному типу, можно проверить его стандартной функцией gettype( )).

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