Аргументы функций
Функция может иметь список аргументов. С помощью этих аргументов в функцию передается различная информация (например, значение числа, степень которого надо подсчитать). Каждый аргумент представляет собой переменную или константу.
С помощью аргументов данные в функцию можно передавать тремя различными способами. 1) передача аргументов по значению (используется по умолчанию), 2)по ссылке и 3)задание значения аргументов по умолчанию.
1) При передаче аргумента в функцию по значению, изменение значения аргумента внутри функции не влияет на его значение вне функции.
<?php ## Передача параметров по значению,
function increment($a) {
echo "Текущее значение: $a<br>";
$а++;
echo "После увеличения: $a<br>";
}
$num = 10;
echo "Начальное значение: $num<br>";
increment ($num);
echo "После вызова функции: $num<br>"; //выведет 10
?>
2) При передаче аргумента в функцию по ссылке в определении функции перед именем аргумента следует написать знак амперсант «&». Это позволить функции изменять ее аргументы и повлияет на их значения вне функции
<? ## Передача параметров по ссылке .
function increment(&$a) { // $а — ссылочная
echo "Текущее значение: $a<br>";
$а++;
echo "После увеличения: $a<br>";
}
$num = 10;
echo "Начальное значение: $num<br>";
increment($num); // передача по ссылке
echo "После вызова функции: $num<br>"; // выводит 11!
?>
3) В функции можно определять значения аргументов, используемые по умолчанию. Само значение по умолчанию должно быть константным выражением, а не переменной и не представителем класса или вызовом другой функции.
// Значения аргументов по умолчанию
<?php
function login($pass, $user=”Nick”) { echo $user.”=”.pass; }
login(123);//вызов функции, выведет Nick=123
?>
Если у функции несколько параметров, то те аргументы, для которых задаются значения по умолчанию, должны быть записаны после всех остальных аргументов в определении функции. В противном случае появится ошибка, если эти аргументы будут опущены при вызове функции.
Дата добавления: 2015-08-26; просмотров: 911;