KinG_95
Компетентный
Как и любой другой алгоритмический язык, PHP имеет поддержку функций. В общем синтаксис функций в PHP наиболее близок к тому, как реализованы функции в C. ниже приведен пример очень простой функции:
Использование этой функции:
По своей сути функции представляют собой участки кода, ассоциированные с определенным именем. Это как правило необходимо для того, чтобы иметь возможность выполнять какую-либо задачу несколько раз используя один и тот же код.
Любая функция в PHP состоит из 4 основных частей:
○ Имени функции. Каждая функция должна иметь свое уникальное имя, в противном случае PHP выдаст ошибку о попытке переопределения функции.
○ Списка аргуметов. Этот список может быть пустым (если функция не должна получать агрументов из внешней программы). Каждый аргумент должен иметь уникальное имя, под которым он будет "известен" внутри функции. В приведенном выше примере функция имеет два аргумента с именами $a и $b.
○ Непосредственно кода функции. Функция можеи содержать внутри себя практически любой код, допустимый в PHP за исключением определения других функций и объектов (это, кстати, отличает PHP например от JavaScript, где вложенное определение функций допустимо). В нашем случае код функции занимается вычислением значения двух переданных аргументов.
○ Возвращаемого значения. Функция не обязана возвращать значение, но если сделать это необходимо, то это делается с помощью оператора return().
--------------------------------------
Для иллюстрации дальнейшего материала предлагаю использовать следующую задачу:
Есть глобальный массив $data, содержащий в себе некоторые данные. Необходимо написать функцию, которая бы при каждом вызове возвращала следующее значение из этого массива или null, если в массиве не осталось значений.
При решении этой задачи мы сталкиваемся с небольшой проблемой: нам необходимо каждый раз возвращать из функции 2 значения (очередное значение из массива и текущее значение указателя в массиве). Однако необходимо заметить, что функция может вернуть только одно значение. Ниже мы рассмотрим разные варианты обхода этой проблемы.
PHP:
function mySum($a,$b)
{
$result = $a+$b;
return($result);
};
PHP:
$result = mySum(2,3);
Любая функция в PHP состоит из 4 основных частей:
○ Имени функции. Каждая функция должна иметь свое уникальное имя, в противном случае PHP выдаст ошибку о попытке переопределения функции.
○ Списка аргуметов. Этот список может быть пустым (если функция не должна получать агрументов из внешней программы). Каждый аргумент должен иметь уникальное имя, под которым он будет "известен" внутри функции. В приведенном выше примере функция имеет два аргумента с именами $a и $b.
○ Непосредственно кода функции. Функция можеи содержать внутри себя практически любой код, допустимый в PHP за исключением определения других функций и объектов (это, кстати, отличает PHP например от JavaScript, где вложенное определение функций допустимо). В нашем случае код функции занимается вычислением значения двух переданных аргументов.
○ Возвращаемого значения. Функция не обязана возвращать значение, но если сделать это необходимо, то это делается с помощью оператора return().
--------------------------------------
Для иллюстрации дальнейшего материала предлагаю использовать следующую задачу:
Есть глобальный массив $data, содержащий в себе некоторые данные. Необходимо написать функцию, которая бы при каждом вызове возвращала следующее значение из этого массива или null, если в массиве не осталось значений.
При решении этой задачи мы сталкиваемся с небольшой проблемой: нам необходимо каждый раз возвращать из функции 2 значения (очередное значение из массива и текущее значение указателя в массиве). Однако необходимо заметить, что функция может вернуть только одно значение. Ниже мы рассмотрим разные варианты обхода этой проблемы.
