get_defined_vars()
Introducción
La función get_defined_vars() es una función integrada en PHP que devuelve un array asociativo que contiene todas las variables definidas en el ámbito actual, incluidas las definidas por PHP y las definidas por el usuario.
Sintaxis
La sintaxis de la función get_defined_vars() es la siguiente:
La sintaxis de PHP de get_defined_vars()
array get_defined_vars(void)La función no toma parámetros. Devuelve un array asociativo donde las claves son los nombres de las variables y los valores son los valores de las variables.
Ejemplo de uso
A continuación se muestra un ejemplo de cómo usar la función get_defined_vars() en PHP:
Ejemplo de PHP get_defined_vars()
<?php
$var1 = "hello";
$var2 = 42;
function testFunction() {
$var3 = true;
$all_vars = get_defined_vars();
print_r($all_vars);
}
testFunction();
?>En este ejemplo, definimos dos variables globales $var1 y $var2, y una variable local $var3 dentro de testFunction(). Cuando se llama a get_defined_vars() dentro de la función, solo devuelve las variables locales y las superglobales de PHP, no las globales $var1 y $var2. La salida muestra un array asociativo que contiene las variables del ámbito actual:
Array
(
[var3] => 1
[GLOBALS] => Array
(
...
)
[$_SERVER] => Array
(
...
)
[$_GET] => Array
(
...
)
[$_POST] => Array
(
...
)
[$_FILES] => Array
(
...
)
[$_COOKIE] => Array
(
...
)
[$_SESSION] => Array
(
...
)
)Nota: Esta función está disponible desde PHP 4.0.5. Siempre incluye las superglobales de PHP en el array devuelto, independientemente del ámbito actual.
Conclusión
La función get_defined_vars() es una herramienta útil para inspeccionar todas las variables definidas en el ámbito actual de un script PHP. Se puede utilizar con fines de depuración, para verificar si se ha definido una variable en particular, o para asegurarse de que todas las variables necesarias estén definidas antes de ejecutar un bloque de código. Al utilizar esta función, los desarrolladores pueden verificar rápidamente el estado actual de las variables y depurar problemas relacionados con el ámbito sin tener que revisarlas manualmente una por una.
Práctica
¿Qué hace la función de PHP get_defined_vars()?