| auteur : Eric Berger |
Si l'on essaie d'accéder à une variabe globale depuis l'intérieur d'une fonction, on accédera en fait à la variable locale (interne à la fonction) du même nom, qui n'affichera rien si elle n'a pas été définie.
Pour rendre une variable globale accessible depuis une fonction, il faut expressément le spécifier à l'aide de l'instruction global suivie des noms des variables qui doivent être accessibles (séparés par des virgules).
Exemple :
<?
$ nom = " Pierre " ;
function afficheNom(){
echo $ nom ;
global $ nom ;
echo $ nom ;
}
?>
|
|
| auteur : Eric Berger | Pour créer une variable globale, il suffit de la définir depuis la racine du script PHP, c'est à dire pas dans une fonction ou dans une classe.
Exemple :
<?
$ var = " valeur " ;
function maFonction(){
$ var2 = " valeur2 " ;
}
?>
|
|
| auteur : Eric Berger | Une variable définie dans une fonction doit parfois être accessible depuis l'ensemble du script. Pour ce faire, il existe deux possibilités:
Dans la fonction
En amenant la variable globale dans la fonction:
function majGlobale(){
$ varLoc = " Toto " ;
global $ varGlob ;
$ varGlob = $ varLoc ;
}
echo $ varGlob ;
|
Avec Return
Si seule une variable doit être transmise, il est possible de la transmettre en fin de fonction à l'aide de l'instruction Return.
Exemple :
function majGlobale(){
$ varLoc = " Toto " ;
. . .
return $ varLoc ;
}
$ varGlob = majGlobale();
|
|
Consultez les autres F.A.Q.
Les sources présentés sur cette page sont libres de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2003
Developpez LLC. Tous droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérêts.
Cette page est déposée à la SACD.
|