get_defined_vars()
Einführung
Die Funktion get_defined_vars() ist eine integrierte Funktion in PHP, die ein assoziatives Array zurückgibt, das alle im aktuellen Gültigkeitsbereich definierten Variablen enthält, einschließlich der von PHP und des Benutzers definierten.
Syntax
Die Syntax der Funktion get_defined_vars() lautet wie folgt:
Die PHP-Syntax von get_defined_vars()
array get_defined_vars(void)Die Funktion benötigt keine Parameter. Sie gibt ein assoziatives Array zurück, bei dem die Schlüssel die Variablennamen und die Werte die Variablenwerte sind.
Anwendungsbeispiel
Hier ist ein Beispiel für die Verwendung der Funktion get_defined_vars() in PHP:
Beispiel für PHP get_defined_vars()
<?php
$var1 = "hello";
$var2 = 42;
function testFunction() {
$var3 = true;
$all_vars = get_defined_vars();
print_r($all_vars);
}
testFunction();
?>In diesem Beispiel definieren wir zwei globale Variablen $var1 und $var2 sowie eine lokale Variable $var3 innerhalb von testFunction(). Wenn get_defined_vars() innerhalb der Funktion aufgerufen wird, gibt es nur die lokalen Variablen und PHP-Superglobals zurück, nicht die globalen $var1 und $var2. Die Ausgabe zeigt ein assoziatives Array, das die Variablen des aktuellen Gültigkeitsbereichs enthält:
Array
(
[var3] => 1
[GLOBALS] => Array
(
...
)
[$_SERVER] => Array
(
...
)
[$_GET] => Array
(
...
)
[$_POST] => Array
(
...
)
[$_FILES] => Array
(
...
)
[$_COOKIE] => Array
(
...
)
[$_SESSION] => Array
(
...
)
)Hinweis: Diese Funktion ist seit PHP 4.0.5 verfügbar. Sie enthält immer PHP-Superglobals im zurückgegebenen Array, unabhängig vom aktuellen Gültigkeitsbereich.
Fazit
Die Funktion get_defined_vars() ist ein nützliches Werkzeug zum Untersuchen aller definierten Variablen im aktuellen Gültigkeitsbereich eines PHP-Skripts. Sie kann zum Debuggen verwendet werden, um zu prüfen, ob eine bestimmte Variable definiert wurde, oder um sicherzustellen, dass alle erforderlichen Variablen definiert sind, bevor ein Codeblock ausgeführt wird. Durch die Verwendung dieser Funktion können Entwickler den aktuellen Zustand der Variablen schnell überprüfen und bereichsbezogene Probleme debuggen, ohne jede Variable manuell prüfen zu müssen.
Praxis
Was macht die PHP-Funktion get_defined_vars()?