Возврат значений

Значения возвращаются необязательной инструкцией возврата. Разрешается возвращать любой тип, включая массивы и объекты. Возврат немедленно завершает выполнение функции и передаёт управление обратно, к той строке кода, в которой вызвали функцию. Подробную информацию о возврате значений даёт описание инструкции return.

Замечание:

Если инструкцию return не указали, функция вернёт значение null.

Инструкция return

Пример #1 Пример функции с инструкцией return

<?php

function square($num)
{
return
$num * $num;
}

echo
square(4); // Выводит 16

?>

Функция не умеет возвращать больше одного значения, но аналогичного результата добиваются возвратом массива.

Пример #2 Возврат нескольких значений в виде массива

<?php

function small_numbers()
{
return [
0, 1, 2];
}

// Деструктуризация массива будет собирать каждый элемент массива индивидуально
[$zero, $one, $two] = small_numbers();

// До версии 7.1.0 единственной эквивалентной альтернативой была языковая конструкция list()
list($zero, $one, $two) = small_numbers();

?>

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

Пример #3 Возврат результата по ссылке

<?php

function &returns_reference()
{
return
$someref;
}

$newref =& returns_reference();

?>

Дополнительную информацию о ссылках даёт раздел документации «Объяснение ссылок».

To Top