在循环内将变量设置为全局范围 [英] set variables to global scope within a loop
问题描述
我想在PHP中定义一些临时全局变量,名为 $ MyGlobalVar1
, $ MyGlobalVar2
... ,但问题是关键字'global'直接使用了变量名:
for($ i = 1; $ i< ; = 10; $ i ++){
$ var ='$ MyGlobalVar'。$ i;
global $ var;
}
即 $ var
现在是全球性的。
设置引号不起作用,因为'global'需要'$'并且会停止($ i = 1; $ i <= 10; $ i ++){$ b $(
) b $ var ='$ MyGlobalVar'。$ i;
全球'$ var';
}
如何将变量设置为全局范围?感谢。
因为您使用'
字符串
尝试
$ GLOBALS 为您的目的
$ b $ pre $ for($ i = 1; $ i <= 10; $ i ++ )
{
// acess as $ GlOBALS ['MyGlobalVar'。$ i]并做任何你想做的事
$ GLOBALS ['MyGlobalVar'。$ i] = null
}
I want to define a number of temporary global variables in PHP called $MyGlobalVar1
, $MyGlobalVar2
... , but the problem is that the keyword 'global' takes the variable name literally:
for ($i = 1; $i<= 10; $i++) {
$var = '$MyGlobalVar'.$i;
global $var;
}
i.e. $var
is now global.
Setting quotes will not work because 'global' expects '$' and will stop execution at the single quote:
for ($i = 1; $i<= 10; $i++) {
$var = '$MyGlobalVar'.$i;
global '$var';
}
How to set the variables to global scope? Thanks.
since you using '
it will always be taken as string
Try $GLOBALS for your purpose
for ($i = 1; $i<= 10; $i++)
{
// acess as $GlOBALS['MyGlobalVar'.$i] and do whatever you want
$GLOBALS['MyGlobalVar'.$i] = null
}
这篇关于在循环内将变量设置为全局范围的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!