Dans PHP, Global et $ Globals sont dans les deux moyens d'accéder aux variables globales. Où Global est un mot-clé, et $ Globals est une variable hyperglobale. Les deux peuvent être utilisés pour manipuler les variables globales, mais elles ont des différences d'utilisation.
Lorsque vous utilisez le mot-clé global, vous devez redémarrer les variables à l'intérieur de chaque fonction afin d'introduire des variables globales. Par exemple:
$global_var = 10;
function test_global() {
global $global_var;
echo $global_var;
}
test_global(); // Sortir10
Lors de l'utilisation de la variable Global Global $ Global, la variable globale est accessible directement dans la fonction sans déclaration de portée supplémentaire. Par exemple:
$global_var = 10;
function test_global() {
echo $GLOBALS['global_var'];
}
test_global(); // Sortir10
Comme indiqué ci-dessus, l'utilisation de $ global est plus simple.
Lorsque vous utilisez le mot-clé global, la portée de la variable est limitée à la fonction actuelle. Lorsque vous utilisez une variable de super-global $ Globals, l'ensemble du script peut accéder à la variable.
$global_var = 10;
function test_global() {
global $global_var;
echo $global_var;
}
function test_globals() {
echo $GLOBALS['global_var'];
}
test_global(); // Sortir10
test_globals(); // Sortir10
Comme indiqué ci-dessus, Global ne peut être accessible que dans les fonctions, tandis que $ Globals est disponible tout au long du script.
Bien que Global et $ Globals puissent accéder aux variables globales, dans le développement réel, il est recommandé d'utiliser des variables hyperglobales $ Globals. Les raisons sont les suivantes:
L'utilisation de $ Global peut éviter d'utiliser plusieurs fois les mots clés globaux à l'intérieur de chaque fonction, ce qui rend le code plus concis.
Dans certains environnements stricts, le mot-clé global peut être désactivé et $ Globals n'est pas soumis à cette restriction.
$ Globals permet d'accéder aux variables globales tout au long du script, ce qui facilite l'appel d'autres parties du code.
Bien que Global et $ Globals puissent être utilisés pour accéder aux variables globales, il existe certaines différences. Pour la simplicité du code et une meilleure compatibilité, les développeurs devraient prioriser les variables Global Super Global $.