El punto delicado de return en PHP
Después de que se ejecute la instrucción return
- la función terminará su trabajo. Es decir:
después de ejecutar return, ningún código
posterior se ejecutará.
Vea el ejemplo:
<?php
function func($num) {
return $num * $num;
echo '!'; // este código nunca se ejecutará
}
$res = func(3);
?>
Esto no significa que en la función deba haber
un solo return. Pero solo se ejecutará
uno de ellos.
En el siguiente ejemplo, dependiendo del valor
del parámetro, se ejecutará el primer o el segundo
return:
<?php
function func($num) {
if ($num >= 0) {
return '+';
} else {
return '-';
}
}
echo func( 3); // mostrará '+'
echo func(-3); // mostrará '-'
?>
¿Qué se mostrará en la pantalla como resultado de ejecutar el siguiente código:
<?php
function func($num) {
return $num;
$res = $num * $num;
return $res;
}
echo func(3);
?>
Explique por qué.
¿Qué mostrará cada uno de los echo como resultado
de ejecutar el siguiente código:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
} else {
return $num * $num;
}
}
echo func(10);
echo func(-5);
?>
Explique por qué.
¿Qué mostrará cada uno de los echo como resultado
de ejecutar el siguiente código:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
}
return $num * $num;
}
echo func(10);
echo func(-5);
?>
Explique por qué.