Blog de programación, errores, soluciones

php / global – alcance o ámbito de las variables

En php la mayoria de las variables esta en un ambito simple por ejemplo:

<?php
   $variable = "hola mundo";
   include "archivo.php";
?>

la variable $variable estara disponible incluso en archivo.php, excepto en las funciones dentro de una funcion las variables son locales, todas las variables dentro de una funcion tendran alcance local.

Como vimos en el apartado de funciones en php podemos pasar por parametro la variable y así interactuar con ella.

También desde PHP 7 podemos usar use en la función lo cual nos permite usar una variable de ámbito padre en las funciones anónimas.

Ahora como podemos usar esta variable del ámbito padre dentro de una función podemos usar la palabra clave global.

por ejemplo:

<?php
function cambioDeTexto(){
   global $a;
   $a = "gg";
}

$a = "hello word";
cambioDeTexto();

Si ejecuta el siguiente código y se fija el valor de la variable $a ya no sera «hello word» sera «gg» ya que estamos interactuando con la variable $a del ámbito padre.

A en este caso es una variable global.

Si hacemos un echo o un print de $GLOBALS[«a»] veremos que la variable $a esta en las variables globales.

Ahora usted estará pensando si declaro $a o cualquier otra variable en el ámbito simple es global?. Simplemente le diré probemoslo.

<?php
$a = "hola";
echo $GLOBALS["a"];

Se lo dejo de tarea ¿Por que funciona 🙃 ?

deja tu respuesta en los comentarios

Ayudame: Por favor deja un comentario antes de irte, tu opinión es bienvenida. Si te gusta el contenido comparte.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Last 4 post in same category