Return переменная или выражение;
}
Имя функции выбирается так же, как и имя переменной, только перед ним не ставится символ $. Недопустимо использование в качестве имени функции имен математических функций и ключевых (служебных) слов PHP.
Создадим функцию, вычисляющую сумму двух переменных:
function summa($x, $y) // $x, $y – формальные параметры
{
$z = $x + $y; // $z – локальная переменная
return $z; // возвращение результата вычислений
}
Если строки return $z в функции нет, то она ничего не вернет в вызывающую программу.
Функции располагаются, как правило, в начале программы:
<&php
function summa($x, $y) // $x, $y – формальные параметры
{
$z = $x + $y; // $z – локальная переменная
return $z;
}
$a = 3;
$b = 5;
$c = summa($a, $b); // обращение к функции
echo ‘Сумма = ‘, $c, “<BR>”; // $c=8
?>
Фактические параметры (исходные данные) передаются в функцию по значению. Это означает, что если внутри функции формальные параметры, соответствующие этим фактическим, изменяют свои значения, то фактические параметрыне изменяются:
<&php
function summa($x, $y) // $x, $y – формальные параметры
{
$x++;
$y++;
$z = $x + $y; // $z – локальная переменная
return $z;
}
$a = 3;
$b = 5;
$c = summa($a, $b); // обращение к функции
echo ‘Сумма = ‘, $c, “<BR>”; // $c=10
echo $a, “<BR>”; // $a=3
echo $b, “<BR>”; // $b=5
?>
Чтобы изменения параметров, выполненные внутри функции, были видны и за ее пределами, их необходимо передавать по ссылке (адресу переменной). Для этого в списке формальных параметров перед их именами ставится символ & :
<&php
function summa(&$x, &$y) // &$x, &$y – ссылки
{
$x++;
$y++;
$z = $x + $y; // $z – локальная переменная
return $z;
}
$a = 3;
$b = 5;
$c = summa($a, $b); // обращение к функции
echo ‘Сумма = ‘, $c, “<BR>”; // $c=10
echo $a, “<BR>”; // $a=4
echo $b, “<BR>”; // $b=6
?>
При передаче параметра по ссылке формальному параметру функции передается незначение, а адрес соответствующего фактического параметра.
В функциях можно использовать статические переменные:
Дата добавления: 2015-08-26; просмотров: 790;