Функции, возвращающие значение

Большинство встроенных функций в РНР возвращают какое-либо значение в качестве результата. До сих пор все разработанные функции не возвращали ни­каких значений. Пришло время исправить этот недостаток.

Для возврата значения из функции используется оператор return, синтак­сис которого представлен ниже:

code: #php
return  (value);

Скобки, которые делают оператор return похожим на функцию, являются необязательными. Ниже приведен пример функции square для вычисления квадрата заданного числа:

code: #php
<?php
function square($value) {
   return $value * $value;
}
?>

После того, как данная функция описана, ее можно использовать так же, как и любую другую встроенную функцию РНР:

code: #php
<?php
function square($value) {
  return $value * $value;
}
 
echo "16 x 16 = ", square(16);
?>

В результате выполнения данного кода будет отображена следующая строка:

16 х 16 = 256

Функция может возвращать значения любого типа, например, логического. Ниже приведен пример функции, предназначенной для проверки комфортно­сти температуры воздух2. Функция возвращает значение TRUE в случае хоро­шей погоды и FALSE в противоположном случае. Соответствующий фрагмент кода выглядит следующим образом:

code: #php
<?php
function check_temperature($temperature) {
  $return_value = FALSE;
 
  if  ($temperature > 24 && $temperature < 26) {
    $return_value = TRUE;
  }
 
  return $return_value;
}
 
$degrees = 25;
 
if (check_temperature($degrees)) {
  echo "Хорошая погода.";
} else {
  echo "Плохая погода.";
}
 
?>

Результатом запуска этого скрипта является отображение следующей стро­ки:

Хорошая погода.

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

code: #php
<?php
function check_temperature($temperature) {
  if  ($temperature > 24 && $temperature < 26) {
    return TRUE;
  }
 
  return FALSE;
}
 
$degrees = 25;
 
if (check_temperature  ($degrees)) {
  echo "Хорошая погода.";
} else {
  echo "Плохая погода.";
}
 
?>

При выполнении этого примера результат будет точно такой же, как и в пре­дыдущем случае.

Книга: PHP в примерах. Купить книгу
Автор: Стивен Хольцнер. Переводчик: С. Банников
Поделиться:

Похожие статьи: