我在我的站点中使用这些变量:
$_SESSION["domain.com"]["var1"]
$_SESSION["domain.com"]["var2"]
$_SESSION["domain.com"]["var3"]
等等…我如何一次将所有这些变量设置为某个值?
编写一个简单的嵌套循环:
foreach ($_SESSION as &$vars) {
foreach ($vars as &$value) {
$value = $default_value;
}
}
我使用引用变量,这样循环就可以直接修改元素,而不必分配给$_SESSION[$domain][$variable]
。
你只是想同时设置它们吗?只需将['domain.com']
设置为数组即可。
$_SESSION['domain.com'] = array(
'var1' => 'one',
'var2' => 'two',
'var3' => 'three',
);
下面是一些让您启动并运行的示例代码:
$variables=[];
$setTo=1;
foreach($_SESSION['domain.com'] as $key=>$v){
$variables[]=$key;
}
$prefix='$_SESSION["domain.com"]["';
$eval=$prefix.implode('"]='.$prefix,$variables).'"]='.$setTo.";";
eval($eval);
非常适合生产使用。