En este momento estás viendo ▷ El mejor Tutorial PHP 2022: Alcance variable PHP #7

▷ El mejor Tutorial PHP 2022: Alcance variable PHP #7

El mejor Tutorial PHP 2022: Alcance variable PHP

El alcance de una variable se define como su rango en el programa bajo el cual se puede acceder. En otras palabras, «El alcance de una variable es la parte del programa dentro de la cual se define y se puede acceder a ella».

PHP tiene tres tipos de alcances variables:

  1. Variable local
  2. Variable global
  3. variable estática

Variable local

Las variables que se declaran dentro de una función se denominan variables locales para esa función. Estas variables locales tienen su alcance solo en esa función particular en la que se declaran. Esto significa que no se puede acceder a estas variables fuera de la función, ya que tienen alcance local.

<?php  
    function local_var()  
    {  
        $num = 45;  //local variable  
        echo "Local variable declared inside the function is: ". $num;  
    }  
    local_var();  
?>  

Producción:

La variable local declarada dentro de la función es: 45
<?php  
    function mytest()  
    {  
        $lang = "PHP";  
        echo "Web development language: " .$lang;  
    }  
    mytest();  
    //using $lang (local variable) outside the function will generate an error  
    echo $lang;  
?>  

Producción:

Lenguaje de desarrollo web: PHP
Aviso: Variable indefinida: lang en D:\xampp\htdocs\program\p3.php en la línea 28

Variable global

Las variables globales son las variables que se declaran fuera de la función. Se puede acceder a estas variables desde cualquier parte del programa. Para acceder a la variable global dentro de una función, use la palabra clave GLOBAL antes de la variable. Sin embargo, se puede acceder directamente a estas variables o utilizarlas fuera de la función sin ninguna palabra clave. Por lo tanto, no es necesario utilizar ninguna palabra clave para acceder a una variable global fuera de la función.

Entendamos las variables globales con la ayuda de un ejemplo:

Ejemplo:

<?php  
    $name = "EstrategiaCreativa";        //Global Variable  
    function global_var()  
    {  
        global $name;  
        echo "Variable inside the function: ". $name;  
        echo "</br>";  
    }  
    global_var();  
    echo "Variable outside the function: ". $name;  
?>  

Producción:

Variable dentro de la función: EstrategiaCreativa
Variable fuera de la función: EstrategiaCreativa

Nota: Sin usar la palabra clave global, si intenta acceder a una variable global dentro de la función, generará un error de que la variable no está definida.

Ejemplo:

<?php  
    $name = "EstrategiaCreativa";        //global variable  
    function global_var()  
    {  
        echo "Variable inside the function: ". $name;  
        echo "</br>";  
    }  
    global_var();  
?>  

Producción:

Aviso: Variable indefinida: nombre en D:\xampp\htdocs\program\p3.php en la línea 6
Variable dentro de la función:

Usando $GLOBALS en lugar de global

Otra forma de usar la variable global dentro de la función es la matriz $GLOBALS predefinida.

Ejemplo:

<?php  
    $num1 = 5;      //global variable  
    $num2 = 13;     //global variable  
    function global_var()  
    {  
            $sum = $GLOBALS['num1'] + $GLOBALS['num2'];  
            echo "Sum of global variables is: " .$sum;  
    }  
    global_var();  
?>  

Producción:

La suma de las variables globales es: 18

Si dos variables, local y global, tienen el mismo nombre, entonces la variable local tiene mayor prioridad que la variable global dentro de la función.

Ejemplo:

<?php  
    $x = 5;  
    function mytest()  
    {  
        $x = 7;  
        echo "value of x: " .$x;  
    }  
    mytest();  
?>

Producción:

Valor de x: 7

Nota: la variable local tiene mayor prioridad que la variable global.

variable estática

Es una característica de PHP eliminar la variable, una vez que completa su ejecución y se libera memoria. A veces necesitamos almacenar una variable incluso después de completar la ejecución de la función. Por lo tanto, otra característica importante del alcance de las variables es la variable estática. Usamos la palabra clave estática antes de la variable para definir una variable, y esta variable se denomina variable estática .

Las variables estáticas solo existen en una función local, pero no libera su memoria después de que la ejecución del programa abandona el alcance. Entiéndelo con la ayuda de un ejemplo:

Ejemplo:

<?php  
    function static_var()  
    {  
        static $num1 = 3;       //static variable  
        $num2 = 6;          //Non-static variable  
        //increment in non-static variable  
        $num1++;  
        //increment in static variable  
        $num2++;  
        echo "Static: " .$num1 ."</br>";  
        echo "Non-static: " .$num2 ."</br>";  
    }  
      
//first function call  
    static_var();  
  
    //second function call  
    static_var();  
?>  

Producción:

Estático: 4
No estático: 7
Estática: 5
No estático: 7

Debe notar que $num1 se incrementa regularmente después de cada llamada de función, mientras que $num2 no lo hace. Es por eso que $num1 no es una variable estática, por lo que libera su memoria después de la ejecución de cada llamada a la función.

En Estrategia Creativa tenemos toda la información que necesitas sobre el mundo de digital y en especial para tus emprendimiento Si quieres seguir leyendo información útil  ¡echa un vistazo a nuestros artículos!

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)

Deja una respuesta