2017-08-08 35 views
-1

我希望有人可以提供幫助。
我有一個for循環中的一個功能:php - 我如何循環變量名(在一個函數中),同時使他們全球

for ($i = $o; $i <= $l; $i++){  ...  } 

我在其中創建新的變量,同時循環:

${'var' . $i} = ... 

我要讓這些變量的全局,$GLOBALS['...'] = ...風格,但沒有按$GLOBALS["{'var' . $i}"]似乎沒有工作......有沒有其他方法可以解決這個問題?

+0

你爲什麼用引號包裹裏面?你有沒有試過'$ GLOBALS [{'var'。 $ I}]'? – GrumpyCrouton

+0

由於「make global」命令被定義爲$ GLOBALS ['...'] ...您的建議在語法上不起作用 – user3187119

+0

我剛測試過這段代碼:'$ GLOBALS ['var'。$ i] = $我;'它的工作。 – GrumpyCrouton

回答

1

我想這和它似乎工作:

<?php 

    $GLOBALS['test'] = "brick"; 

    echo $GLOBALS['test']; 

    for ($i = 0; $i <= 5; $i++){ 
     $GLOBALS['var'.$i] = $i; 
    } 

    print_r($GLOBALS); 

?> 

輸出:[GLOBALS] => Array *RECURSION* [i] => 6 [test] => brick [var0] => 0 [var1] => 1 [var2] => 2 [var3] => 3 [var4] => 4 [var5] => 5)(的$GLOBALS剩下的所有垃圾郵件後)

你的問題基本上要包括選擇內部雙引號變量的一部分,這是不需要的。

相關問題