2016-04-13 18 views
0

私は約50個のグローバル変数を持つPHPスクリプトを持っています。 私はグローバル変数が必要なところに約18の関数を持っています。PHP関数ですべてのグローバル変数を一度に使用

ほとんどの機能では、ほぼ40のグローバル変数が必要です。

 function example1() { 
     global $1, $2, $3, ..... $40; 
     } 

     function example2() { 
     global $1, $2, $3, ..... $40; 
     } 

これを行うために、より簡単な方法があります: は、私は今、それらを含めますか?

たとえば、すべてのグローバル変数を一度に含めますか?

おそらく配列ですか?

私はいくつかの良い提案を聞いて願っています!

+0

これらのグローバル変数をSESSIONに保存します。 – Pupil

+10

ちょうどいいえ、いいえ!しないでください – Rizier123

+0

あなたは何をお勧めしますか? –

答えて

0

グローバルに多くの変数を渡していました。今度は、それぞれのループに対して、&で、宣言してグローバル変数に渡す代わりに、配列内のデータを直接変更する必要があることを学びました。

ループ内の配列要素を変更して$ valueの前に&を付けてください。その場合、値は参照によって割り当てられます。

 <?php 
     $arr = array(1, 2, 3, 4); 
     foreach ($arr as &$value) { 
      $value = $value * 2; 
     } 
     // $arr is now array(2, 4, 6, 8) 
     unset($value); // break the reference with the last element 
     ?> 

ありがとうございます!私は多くのコードと変数を削除することができます...

0

あなたは単にすべてのグローバルを含めることができます。

function myFunc() { 
    foreach ($GLOBALS as $n => $v) { 
    global $$n; 
    } 
    ... code using any global variable 
} 

独自の定義済みサブセットを含めることもできます。

$myGlobals = array('n1','n2'); 

function myFunc() { 
    foreach ($GLOBALS['myGlobals'] as $n) { 
    global $$n; 
    } 
    ... code using any global variable named in $myGlobals 
} 
関連する問題