Maison >développement back-end >Problème PHP >Quelle est la différence entre les variables globales et les variables locales en php

Quelle est la différence entre les variables globales et les variables locales en php

青灯夜游
青灯夜游original
2021-09-17 17:33:023132parcourir

Différence : 1. Les variables locales sont des variables définies à l'intérieur d'une fonction et ne peuvent être utilisées que dans la fonction dans laquelle elles sont définies ; les variables globales sont des variables définies en dehors de toutes les fonctions, et leur portée est n'importe où dans le code source actuel, mais à l'intérieur. Il n'est pas disponible dans la fonction. 2. Les variables locales seront automatiquement détruites à la fin de l'appel de fonction, et les variables globales ne seront détruites qu'à la fin du programme.

Quelle est la différence entre les variables globales et les variables locales en php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

La portée d'une variable (la plage qui peut être utilisée) est appelée portée de la variable, et la variable doit être utilisée dans sa portée valide. Une variable perd sa signification si elle sort de la plage valide. Les variables PHP peuvent être divisées en deux types selon leur portée : les variables globales et les variables locales.

Les variables qui peuvent être utilisées n'importe où dans le code source actuel (en dehors de la fonction) sont appelées variables globales, et elles ont une portée globale ; les variables qui ne peuvent être utilisées qu'à l'intérieur de la fonction dans laquelle elles sont définies sont appelées variables locales, et ils ont une portée locale.

En PHP, les variables globales ne peuvent pas être utilisées directement à l'intérieur de la fonction ; et les variables locales ne peuvent pas être utilisées directement en dehors de la fonction. Bien entendu, cela n’est pas absolu. Grâce à certaines méthodes, il est toujours possible d’appeler des variables globales au sein d’une fonction et d’appeler des variables locales en dehors de la fonction. Nous les présenterons dans des études ultérieures.

Variables locales et portée locale

Une variable locale est une variable définie à l'intérieur d'une fonction. Elle ne peut être utilisée que dans la fonction dans laquelle elle est définie. Les variables locales sont automatiquement détruites à la fin de l'appel de fonction.

【Exemple】Ce qui suit définit une fonction nommée exemple, et définit une variable locale a à l'intérieur de la fonction, puis essaie d'afficher la valeur de la variable a à l'intérieur de la fonction et à l'extérieur de la fonction :

<?php
header("Content-type:text/html;charset=utf-8");
function example() {
	$a = "欢迎来到PHP中文网!";
	// 在函数内定义变量 a
	echo "局部变量 a 的值为:" . $a . "<br>";
}

example();
if ($a) {// 在函数外部调用 $a,如果 $a 存在则会打印下面的内容
	echo "在函数外部调用函数内的局部变量 a,其值为:" . $a;
}
?>
.

Les résultats d'exécution sont les suivants :

Quelle est la différence entre les variables globales et les variables locales en php

Il ressort des résultats d'exécution que les variables locales définies à l'intérieur de la fonction ne peuvent pas être appelées en dehors de la fonction, car la portée de la variable locale $a est l'exemple() fonction qui le définit et ne peut pas être utilisé en dehors de la fonction.

Variables globales et portée globale

Les variables globales sont des variables définies en dehors de toutes les fonctions. Leur portée est n'importe où dans le code source actuel, mais elles ne sont pas disponibles dans la fonction. Les variables globales existeront toujours pendant l'exécution du programme et ne seront détruites qu'à la fin du programme.

[Exemple] Définissez une variable globale a et affichez la valeur de la variable globale à l'intérieur et à l'extérieur de la fonction. Le code spécifique est le suivant :

<?php
header("Content-type:text/html;charset=utf-8");
$a = "欢迎来到PHP中文网!";
// 在函数外部定义全局变量 a
function example() {
	if ($a) {
		echo "在函数内部调用全局变量 a,其值为:" . $a;
	}
}

example();
echo "在函数外部调用全局变量 a,其值为:" . $a;
?>

Les résultats d'exécution sont les suivants :

Quelle est la différence entre les variables globales et les variables locales en php

Comme cela peut être. vu les résultats en cours d'exécution, à l'intérieur de la fonction $a n'a pas été appelé avec succès, mais cela était possible en dehors de la fonction.

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn