[php] global pour toutes les variable

Résolu
Lefouerrant Messages postés 578 Statut Membre -  
Lefouerrant Messages postés 578 Statut Membre -
Bonjour,
dans un script php, je voudrais que toutes mes variables soient définies pour une fonction je m'explique :
j'ai un script :

$var1=1;
$var2=2;
$var3=3;
$var4=4;
function lalala() {
...
}

je voudrais utiliser toutes les variables de mon script dans la fonction lalala() MAIS je voudrais aussi ne pas taper :

$var1=1;
$var2=2;
$var3=3;
$var4=4;
function lalala() {
global $var1;
global $var2;
global $var3;
global $var4;
}

je vourais un truc du genre :

$var1=1;
$var2=2;
$var3=3;
$var4=4;
function lalala() {
global $TOUTES_LES_VARIABLES;
}

Merci d'avance
A voir également:

6 réponses

kilian Messages postés 8854 Statut Modérateur 1 526
 
Salut,

$var1=1;
$var2=2;
$var3=3;
$var4=4;
function lalala() {
    //J'utilise la var1
    echo $_GLOBALS['var1'];
    //J'utilise la var2
    $_GLOBALS['var2']++;
} 

Voilà.
Je ne te conseille pas d'utiliser les variables globales. C'est mal.

0
Lefouerrant Messages postés 578 Statut Membre 116
 
ben pourquoi ?
0
Utilisateur anonyme
 
je ne connais pas de moyen , je ne vois pas pourquoi toutes
tu peux abréger avec des virgules global $a,$b,$c;
0
Lefouerrant Messages postés 578 Statut Membre 116
 
c'est vrai !! je vais essayer ca
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Lefouerrant Messages postés 578 Statut Membre 116
 
ca ne marche pas, y me met ceci :

Parse error: parse error, expecting `T_VARIABLE' or `'$'' in index3.php on line 72
0
Alain_42 Messages postés 5413 Statut Membre 894
 
Bonsoir,

beaucoup plus simple et clean,, tu passes les valeurs de tes variables en arguments lors de l'appel de ta fonction:


$var1=1;
$var2=2;
$var3=3;
$var4=4;
function lalala($arg1,$arg2,$arg3,$arg4) {
//tu utilises $arg1  $arg2 etc...

// puis par return tu renvoie ce que tu veux

//exemple:
$tatal=$arg1+$arg2+$arg3+$arg4;

return $total;
} 

//appel de la fonction:

$result=lalala($var1,$var2,$var3,$var4);

//dans le cas de mon exemple $result va recevoir 10


avantage, la fonction ne modifie pas les valeurs intiales des variables

tu maitrises, alors qu'avec les globales si ton code est un peu long tu peux avoir de mauvaises surprises

@lain
0
Lefouerrant Messages postés 578 Statut Membre 116 > Alain_42 Messages postés 5413 Statut Membre
 
pas mal du tout, bon je crois que ca vas maintenant je sais comment faire, merci beaucoup !!!!
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
Erreur de syntaxe?
0