Die Tücke von return in PHP
Nachdem die Anweisung return ausgeführt wurde,
beendet die Funktion ihre Arbeit. Das heißt:
nach der Ausführung von return wird kein weiterer
Code mehr ausgeführt.
Sehen Sie sich das Beispiel an:
<?php
function func($num) {
return $num * $num;
echo '!'; // dieser Code wird niemals ausgeführt
}
$res = func(3);
?>
Das bedeutet nicht, dass es in einer Funktion nur ein
return geben darf. Es wird aber nur eines
von ihnen ausgeführt.
Im nächsten Beispiel wird, abhängig vom Wert des Parameters,
entweder das erste oder das zweite return ausgeführt:
<?php
function func($num) {
if ($num >= 0) {
return '+';
} else {
return '-';
}
}
echo func( 3); // gibt '+' aus
echo func(-3); // gibt '-' aus
?>
Was wird auf dem Bildschirm als Ergebnis der Ausführung des folgenden Codes ausgegeben:
<?php
function func($num) {
return $num;
$res = $num * $num;
return $res;
}
echo func(3);
?>
Erklären Sie, warum.
Was wird jeder der echo-Aufrufe als Ergebnis
der Ausführung des folgenden Codes ausgeben:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
} else {
return $num * $num;
}
}
echo func(10);
echo func(-5);
?>
Erklären Sie, warum.
Was wird jeder der echo-Aufrufe als Ergebnis
der Ausführung des folgenden Codes ausgeben:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
}
return $num * $num;
}
echo func(10);
echo func(-5);
?>
Erklären Sie, warum.