2012-05-07 117 views
0

在任何编程语言(如php,java,javascript等)中,是否可以在给定名称空间内动态地创建循环中变量数量的变量?在范围内动态创建变量

例如,如果我想创建一个具有1和5之间的随机数N个变量,这是被称为random1,random2 .. randomN,是有可能做这样的事情:

loop (N){<br> 
    create variable randomN = random(1,5);<br> 
} 
+0

数组或列表将是标准方法。 –

回答

1

在PHP中,你可以使用可变变量:

$N = 5; 
for ($i = 0; $i != $N; ++$i) { 
    ${"random$i"} = rand(1, 5); 
} 

在JavaScript中,同样的事情:

var N = 5; 
for (var i = 0; i != N; ++i) { 
    window['random' + i] = Math.round(Math.random() * 5); 
} 

虽然,我会建议使用“容器”来保存这些变量,以便它们不是全局创建的。

1

或者您可以使用$$,请参阅variable variables

for ($n = 1; $n <= 5; $n++) { 
    $varName = 'random' . $n; 
    $$varName = rand(1, 5); 
} 

$vars = get_defined_vars(); 
var_dump($vars);