Den knepiga return-satsen i PHP
Efter att en <return-sats har körts
- avslutas funktionen. Det betyder:
efter att en return har körts kommer ingen
mer kod att köras.
Se exempel:
<?php
function func($num) {
return $num * $num;
echo '!'; // den här koden kommer aldrig att köras
}
$res = func(3);
?>
Det betyder inte att en funktion måste ha
en enda <return. Men bara en
av dem kommer att köras.
I nästa exempel kommer, beroende på parameterns värde,
antingen den första eller den andra
<return att köras:
<?php
function func($num) {
if ($num >= 0) {
return '+';
} else {
return '-';
}
}
echo func( 3); // skriver ut '+'
echo func(-3); // skriver ut '-'
?>
Vad kommer att skrivas ut på skärmen som ett resultat av följande kod:
<?php
function func($num) {
return $num;
$res = $num * $num;
return $res;
}
echo func(3);
?>
Förklara varför.
Vad kommer varje <echo att skriva ut som ett resultat
av följande kod:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
} else {
return $num * $num;
}
}
echo func(10);
echo func(-5);
?>
Förklara varför.
Vad kommer varje <echo att skriva ut som ett resultat
av följande kod:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
}
return $num * $num;
}
echo func(10);
echo func(-5);
?>
Förklara varför.