Chaque variable en PHP a une portée qui lui est spécifique, qui est la zone dans laquelle la variable (et donc sa valeur) est accessible.
Pour commencer, la portée des variables est la page sur laquelle elles résident. Par conséquent, si vous définissez $var, le reste de la page peut accéder à $var, mais les autres pages ne peuvent généralement pas y accéder (sauf si des variables spéciales sont utilisées). (Apprentissage recommandé : Programmation PHP du débutant à la maîtrise)
Étant donné que les fichiers inclus fonctionnent comme s'ils faisaient partie du script original (inclus), les variables définies avant la ligne include() sont disponibles pour fichiers inclus. De plus, les variables définies dans le fichier d'inclusion sont disponibles pour le script parent (include) après la ligne include().
Tout cela deviendra moins évident lorsque vous utiliserez vos propres fonctions définies. Ces fonctions ont leur propre portée, ce qui signifie que les variables utilisées dans une fonction ne peuvent pas être utilisées en dehors de celle-ci et que les variables définies en dehors d'une fonction ne peuvent pas être utilisées à l'intérieur de celle-ci. Pour cette raison, les variables à l’intérieur d’une fonction peuvent avoir le même nom que les variables à l’extérieur, mais ce sont toujours des variables complètement différentes avec des valeurs différentes. Pour la plupart des programmeurs débutants, il s’agit d’un concept déroutant.
Pour modifier la portée des variables au sein d'une fonction, vous pouvez utiliser l'instruction globale.
<?php function function_name() { global $var; } $var = 20; function_name(); // Function call. ?>
Dans cet exemple, $var à l'intérieur de la fonction est maintenant le même que $var à l'extérieur de la fonction. Cela signifie que la variable $var a déjà une valeur de 20, et si cette valeur est modifiée à l'intérieur de la fonction, la valeur de $var à l'extérieur changera également.
Une autre façon d'éviter la portée des variables est d'utiliser des variables superglobales : $_GET, $_POST, $_REQUEST, etc. Ces variables sont automatiquement accessibles au sein de votre fonction (ce sont donc des variables superglobales). Vous pouvez également ajouter des éléments au tableau $GLOBALS afin qu'ils puissent être utilisés dans les fonctions.
En d’autres termes, il est préférable de ne pas utiliser de variables globales dans les fonctions. Lors de la conception de fonctions, vous devez leur faire accepter chaque valeur comme paramètre selon les besoins et renvoyer n'importe quelle valeur selon les besoins. S'appuyer sur des variables globales au sein des fonctions les rendrait plus dépendantes du contexte et donc moins utiles.
Une fois déclarées, les constantes seront globalement visibles, c'est-à-dire qu'elles pourront être utilisées à l'intérieur et à l'extérieur des fonctions, mais cela se limite uniquement aux scripts PHP inclus dans une page (y compris les scripts PHP que nous incluons via include et include_once) , mais il ne peut pas être utilisé dans d'autres pages.
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!