Les variables
<<<
Le mot clé global Utilisation des variables static
>>>

4.3.3 Portée des variables
4.3 Les variables
4 Référence du langage
 Manuel PHP

->Le mot clé global
Utilisation des variables static
Les références avec les variables global et static

4.3.3.1 Le mot clé global

Commençons par un exemple avec global :

Exemple avec global

<?php
$a
= 1;
$b = 2;
function
somme() {
    global
$a, $b;
    
$b = $a + $b;
}
somme();
echo
$b;

Le script ci-dessus va afficher la valeur 3 . En déclarant globales les variables $a et $b locales de la fonction somme(), toutes les références à ces variables concerneront les variables globales. Il n'y a aucune limite au nombre de variables globales qui peuvent être manipulées par une fonction.

Une deuxième méthode pour accéder aux variables globales est d'utiliser le tableau associatif pré-défini $GLOBALS . Le précédent exemple peut être réécrit de la manière suivante :

Les variables globales et $GLOBALS

<?php
$a
= 1;
$b = 2;
function
somme() {
    
$GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}
somme();
echo
$b;
?>

Le tableau $GLOBALS est un tableau associatif avec le nom des variables globales comme clé et les valeurs des éléments du tableau comme valeur des variables. Notez que $GLOBALS existe dans tous les contextes, car $GLOBALS est un superglobal . Voici un exemple des super globaux :

Les variables super globales

<?php
function test_global() {

    
// La plupart des variables pré-définies ne sont pas des "superglobales" et
    // requiert le mot-clé 'global' pour être disponible dans une fonction.
    
global $HTTP_POST_VARS;

    echo
$HTTP_POST_VARS['name'];

    
// Les superglobales sont accessibles dans tous les contextes
    // et ne requièrent pas 'global'.  Les superglobales sont disponibles
    // depuis PHP 4.1.0 et HTTP_POST_VARS est de plus en plus
    // déprécié.
    
echo $_POST['name'];
}
?>

<< Le mot clé global >>
Les variables Portée des variables Utilisation des variables static