Returning Values
Часть раздела Основы путешествия по PHP на Coddy — урок 63 из 71.
Функции, которые мы создали до сих пор, используют echo для непосредственного вывода результата. Но часто вы хотите, чтобы функция вычисляла что-то и возвращала результат вам, чтобы вы могли использовать его в другом месте в вашем коде. Именно здесь вступает в игру оператор return.
Оператор return возвращает значение туда, откуда была вызвана функция:
<?php
function add($a, $b) {
return $a + $b;
}
$result = add(5, 3);
echo $result;
?>Это выводит 8. Вместо вывода суммы внутри функции мы возвращаем её. Вызывающий код получает это значение и сохраняет его в $result.
Возврат значений делает функции гораздо более универсальными. Вы можете использовать возвращаемое значение в вычислениях, передать его другим функциям или сохранить для последующего использования:
<?php
function double($num) {
return $num * 2;
}
echo double(5) + double(3);
?>Это выводит 16 (10 + 6). Каждый вызов double() возвращает значение, которое используется в сложении.
Одна важная вещь, которую нужно знать: когда PHP встречает оператор return, функция немедленно останавливается. Любой код после return не выполнится.
Задание
ЛегкоПрочитайте две строки ввода:
- Число, представляющее основание прямоугольника (например,
5) - Число, представляющее высоту прямоугольника (например,
3)
Создайте функцию с именем calculateArea, которая принимает два параметра: $base и $height. Функция должна возвращать площадь прямоугольника (основание × высота).
Вызовите функцию с значениями ввода, сохраните возвращаемое значение в переменную и выведите результат.
Пример 1:
Если входные данные 5 и 3, вывод должен быть:
15Пример 2:
Если входные данные 10 и 7, вывод должен быть:
70Пример 3:
Если входные данные 12 и 4, вывод должен быть:
48Шпаргалка
Оператор return возвращает значение туда, откуда была вызвана функция, позволяя использовать результат в другом месте вашего кода:
<?php
function add($a, $b) {
return $a + $b;
}
$result = add(5, 3);
echo $result; // Outputs: 8
?>Возвращаемые значения можно использовать в вычислениях или передавать в другие функции:
<?php
function double($num) {
return $num * 2;
}
echo double(5) + double(3); // Outputs: 16
?>Когда PHP встречает оператор return, функция немедленно останавливается. Любой код после return не выполнится.
Попробуйте сами
<?php
// Чтение ввода
$base = intval(fgets(STDIN));
$height = intval(fgets(STDIN));
// TODO: Создать функцию с именем calculateArea, которая принимает параметры $base и $height
// Функция должна возвращать площадь (основание × высота)
// TODO: Вызвать функцию с входными значениями и сохранить результат в переменную
// Вывод результата
echo $result;
?>В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators