Ámbito de las Variables en PHP
Lo que verá en el navegador será:<?phpfunction cuadrado($numero){$cuadrado=$numero*$numero;echo ("El cuadrado de $numero es $cuadrado.<br>");}$numero=3;cuadrado($numero);echo ("La variable \$numero vale $numero y es de tipo ".gettype ($numero)."<br>");echo ("La variable \$cuadrado vale $cuadrado y es de tipo ".gettype ($cuadrado)."<br>");
?>
- Dentro de la función se ha declarado la variable $cuadrado. Esta variable almacena un resultado que se muestra mediante la instrucción echo() que forma parte del cuerpo de la función.
- Cuando se termina la ejecución de la función se continúa con el script.
- Vemos que hay una linea destinada a mostrar el valor de $cuadrado y su tipo, y no nos muestra nada, y como tipo nos muestra NULL. Es decir la variable no existe, y sin embargo ha sido declarada y utilizada dentro del cuerpo de la función que acaba de ejecutarse.
- Lo que vemos es que una variable que ha sido declarada dentro de una función no existe fuera de la misma.
- Variable Local
- Es de ámbito privado, y solo sirve para la función que la contiene
- Variable Global
- Declarada en el cuerpo principal de script.
- Está disponible para todo el script.
<?phpfunction cuadrado($valor){$cuadrado=$valor*$valor;echo ("El cuadrado de $valor es $cuadrado.<br>");echo ("La variable \$numero dentro de la función vale $numero y es de tipo ".gettype ($numero)."<br>");}$numero=3;cuadrado($numero);echo ("La variable \$numero fuera de la función vale $numero y es de tipo ".gettype ($numero)."<br>");echo ("La variable \$cuadrado fuera de la función vale $cuadrado y es de tipo ".gettype ($cuadrado)."<br>");?>
<?phpfunction cuadrado($valor){global $numero;$cuadrado=$valor*$valor;echo ("El cuadrado de $valor es $cuadrado.<br>");echo ("La variable \$numero dentro de la función vale $numero y es de tipo ".gettype ($numero)."<br>");}$numero=3;cuadrado($numero);echo ("La variable \$numero fuera de la función vale $numero y es de tipo ".gettype ($numero)."<br>");echo ("La variable \$cuadrado fuera de la función vale $cuadrado y es de tipo ".gettype ($cuadrado)."<br>");?>
- Esta matriz es propia del interprete, es decir, no es necesario declararla, y almacena todas las variables globales que se usan en el script.
- Cada vez que usted ejecuta un script esta matriz se crea automáticamente.
- Se trata de una matriz asociativa en la que se crea un elemento por cada variable global que usa el script
- El índice de cada elemento es el nombre de la variable y el contenido es el valor de esa variable.
Observe en la linea resaltada cómo hemos usado la matriz $GLOBALES<?phpfunction cuadrado($valor){$cuadrado=$valor*$valor;echo ("El cuadrado de $valor es $cuadrado.<br>");echo ("La variable \$numero dentro de la función vale ".$GLOBALS ["numero"]." y es de tipo ".gettype ($GLOBALS ["numero"])."<br>");}$numero=3;cuadrado($numero);echo ("La variable \$numero fuera de la función vale $numero y es de tipo ".gettype ($numero)."<br>");echo ("La variable \$cuadrado fuera de la función vale $cuadrado y es de tipo ".gettype ($cuadrado)."<br>");?>
Temas referentes a la Definición de Funciones
Si te hemos ayudado : )
Te agradeceríamos que apoyaras este proyecto
0 comentarios:
Publicar un comentario