El alcance en PHP
Lección 13 / 24
Php Desarrollador Php Curso php
Ahora que hemos definido qué son los parámetros formales y los parámetros reales, procedamos con nuestras lecciones de php, analizando otro concepto clave en el mundo de la programación informática, muy relacionado con las funciones: el concepto de ALCANCE.
El alcance define el contexto en el que se ejecuta una determinada pieza de código. Puede ser global o local.
En el caso de nuestras funciones, tendremos que lidiar con el ámbito local: todo lo que se declarará y manipulará dentro de ellas no será visible externamente.
En este sentido, podemos imaginar las funciones como agujeros negros: desde fuera no podemos ver nada dentro de ellos. Nuestras funciones de "agujero negro", sin embargo, tienen una especie de pequeño botón y una pantalla; cuando pulsamos el botón (es decir, recordamos la función para activarlo), en su interior se activa un mecanismo que nos muestra algo en la pantalla (lo que, en realidad, vemos concretamente en la pantalla)
Veámoslo en el código:
<?php
$num1=24;
$num2=37;
function sum(){
echo $num1+$num2;
}
sum();
?>
Esta función no devolverá el resultado correcto y nos dará mensajes de advertencia, que nos avisarán que las variables $num1 $num2 no están definidas.
Esto sucede precisamente porque desde dentro de la función no es posible utilizar todo lo que se declara fuera de ella (en este caso las variables $num1 y $num2)
Entonces, ¿cómo hacemos que nuestras variables sean visibles dentro del alcance? Sencillo: las "introducimos" declarando la función con dos parámetros formales y, cuando la vayamos a llamar para usarla, le pasaremos las dos variables externas como parámetros reales.
<?php
$num1=24;
$num2=37;
function sum($number1, $number2){
echo $number1+$number2;
}
sum($num1,$num2);
?>
Ahora el resultado que se muestra en la salida será correcto.
Luego abrimos la puerta de la función, ingresamos las dos variables y mostramos el resultado de su suma.
PHP RETURN
En el código escrito hasta ahora el resultado de la suma aparecería escrito en la terminal.
Las funciones, sin embargo, no se utilizan realmente para que aparezca un resultado en la pantalla. Su uso práctico es proporcionarnos datos que serán reutilizados dentro de nuestro código, fuera de la función.
Para poder reutilizarlo utilizaremos la palabra clave "return" dentro de la función.
Veamos un ejemplo:
<?php
$num1=24;
$num2=37;
function sum($number1, $number2){
return $number1 + $number2;
}
$sumResult = sum($num1,$num2);
echo "El resultado de la suma es: $sumResult";
?>
En output veremos:
Esta vez, sin embargo, como podemos ver en el ejemplo, tuvimos la necesidad de insertar (asignar) el resultado de la función dentro de una nueva variable ($ sumResult), para que podamos insertar, posteriormente, la variable en una cadena y mostrar su valor real en nuestro eco.
Si no hubiésemos declarado la variable $sumResult, el ""return" hubiera sido un fin en sí mismo y no hubiésemos podido utilizar el resultado para otros fines (en este caso para imprimirlo en la consola, pero las aplicaciones podría haber sido lo más variado)
Finalmente logramos dejar que las variables externas entren en la función, usando parámetros formales y parámetros reales, pero también dejar que el resultado del procesamiento salga de la función para usarlo.
Anterior
12 Funciones PHP para t..Siguiente
14 Pasaje por valor y p..