Дисциплины - Алгоритмизация

Функция: определение, виды. Возврат значений из функции.

Фу́нкция в программировании, или подпрограмма — фрагмент программного кода, к которому можно обратиться из другого места программы.

Функции в PHP

Приведём пример синтаксиса для описания функций:

function foo($arg_1, $arg_2, /* ..., */ $arg_n)
{
    echo "Пример функции.\n";
    return $retval;
}

Функция принимает информацию в виде списка аргументов — выражений через запятую. Аргументы вычисляются слева направо перед фактическим вызовом функции (энергичное вычисление).

PHP поддерживает передачу аргументов по значению (по умолчанию), передачу аргументов по ссылке, и значения по умолчанию. Списки аргументов переменной длины и именованные аргументы также поддерживаются.

Передача массива в функцию:

function takes_array($input)
{
    echo "$input[0] + $input[1] = ", $input[0]+$input[1];
}

Передача аргументов по ссылке

По умолчанию аргументы в функцию передаются по значению (это означает, что если вы измените значение аргумента внутри функции, то вне её значение всё равно останется прежним). Если вы хотите разрешить функции модифицировать свои аргументы, вы должны передавать их по ссылке.

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

function add_some_extra(&$string)
{
    $string .= 'и кое-что ещё.';
}

$str = 'Это строка, ';
add_some_extra($str);
echo $str;    // Выведет «Это строка, и кое-что ещё.»

Значения аргументов по умолчанию

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

function makecoffee($type = "капучино")
{
    return "Готовим чашку $type.\n";
}

echo makecoffee();
echo makecoffee(null);
echo makecoffee("эспрессо");

Подробнее - https://www.php.net/manual/ru/functions.arguments.php

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться
Учебная программа