Тонкое место return в PHP

После того, как выполнится инструкция return - функция закончит свою работу. То есть: после выполнения return больше никакой код не выполнится.

Смотрите пример:

<?php function func($num) { return $num * $num; echo '!'; // этот код никогда не выполнится } $res = func(3); ?>

Это не значит, что в функции должен быть один return. Но выполнится только один из них.

В следующем примере в зависимости от значения параметра выполнится либо первый, либо второй return:

<?php function func($num) { if ($num >= 0) { return '+'; } else { return '-'; } } echo func( 3); // выведет '+' echo func(-3); // выведет '-' ?>

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

<?php function func($num) { return $num; $res = $num * $num; return $res; } echo func(3); ?>

Объясните почему.

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

<?php function func($num) { if ($num <= 0) { return abs($num); } else { return $num * $num; } } echo func(10); echo func(-5); ?>

Объясните почему.

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

<?php function func($num) { if ($num <= 0) { return abs($num); } return $num * $num; } echo func(10); echo func(-5); ?>

Объясните почему.



Чат с GPT Компилятор