PHP и MySQLГлава 5. Функции.§ 5.1. Определения и вызовы функций.
Функция объявляется при помощи ключевого слова function MyFunction() { // операторы } Если функция принимает аргументы, то они записываются как переменные в объявлении функции. Аргумент функции представляет собой переменную, передаваемую в тело функции для дальнейшего использования в операциях. В случае, когда функция принимает больше одного аргумента, эти переменные разделяются запятыми: function MyFunction($var, $var1, $var2)
Если функция возвращает какое-либо значение, в теле функции обязательно должен присутствовать
оператор function MyFunction() { return $var; // возвращается значение переменной $var } Пример простой функции: <? function get_sum() { $var = 5; $var1 = 10; $sum = $var1 + $var2; return $sum; } echo get_sum(); // выводит 15 ?>
В этом примере показана функция, вычисляющая сумму двух чисел. Эта функция не принимает ни
одного аргумента, а просто вычисляет сумму и возвращает полученный результат. После этого,
она вызывается в теле оператора <? function get_sum() { $var1 = 5; $var2 = 10; $sum = $var1 + $var2; echo $sum; } get_sum(); ?>
Переменные <? function get_sum($var1, $var2) { $sum = $var1 + $var2; echo $sum; } get_sum(5,2); // выводит 7 ?> Переменная, содержащая значение, переданное через аргумент, называется параметром функции. В рассмотренных примерах аргументы функции передаются по значению, т. е. значения параметров изменяется только внутри функции, и эти изменения не влияют на значения переменных за пределами функции:
<?php
Для того чтобы переменные, переданные функции сохраняли свое значение при выходе из нее, применяется передача параметров по ссылке. Для этого при вызове функции перед именем переменной необходимо поместить амперсанд &: function test($var1, $var1, $var3) { // тело функции } test($var1, $var1, &$var3)
В этом случае переменные
<?php
Чтобы не забывать каждый раз писать & перед переменной, передавая ее функции, существует и другой синтаксис передачи по ссылке. А именно, можно символ & перенести прямо в заголовок функции:
<?php
|
||