[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
--

Âne aux nîmes

6 réponses

  1. kilian Messages postés 8675 Date d'inscription   Statut Modérateur Dernière intervention   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
  2. Lefouerrant Messages postés 578 Statut Membre 116
     
    ben pourquoi ?
    0
  3. jmg78
     
    je ne connais pas de moyen , je ne vois pas pourquoi toutes
    tu peux abréger avec des virgules global $a,$b,$c;
    0
  4. Lefouerrant Messages postés 578 Statut Membre 116
     
    c'est vrai !! je vais essayer ca
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
    1. Alain_42 Messages postés 5413 Statut Membre 904
       
      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
      1. 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
  7. kilian Messages postés 8675 Date d'inscription   Statut Modérateur Dernière intervention   1 526
     
    Erreur de syntaxe?
    0