Тонкае месца 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);
?>
Тлумачце чаму.