PHP变量和会话问题
我正在努力完成这件事PHP变量和会话问题,php,session,variables,Php,Session,Variables,我正在努力完成这件事 $m1 = $_SESSION[m1]; ..... 使用以下for循环 for ($i = 1; $i < 9; $i++) { $m . $i = $_SESSION['m' . $i]; } ($i=1;$i
$m1 = $_SESSION[m1];
.....
使用以下for循环
for ($i = 1; $i < 9; $i++) {
$m . $i = $_SESSION['m' . $i];
}
($i=1;$i<9;$i++)的{
$m.$i=$\会话['m'.$i];
}
我做错了什么
谢谢。试试看
for ($i = 1; $i < 9; $i++) {
${'m' . $i} = $_SESSION['m' . $i];
}
($i=1;$i<9;$i++)的{
${m'.$i}=$\u会话['m'.$i];
}
$m$i
是两个变量($m
和$i
)的值的集合,不能用作赋值变量
无论如何,为什么不使用数组?
您的$m$i
无效:应改为使用:${m'.$i}
基本上:
- 首先,构造变量的名称:
'm'$我
- 并且,只有这样,您才能尝试访问具有以下名称的变量:
${'m'.$i}
您还可以使用以下语法:
$variableName = 'm' . $i;
$$variableName = 'your-value-here';
当然,还有PHP手册中的参考:.部分
$m$问题出在我身上。正如其他答案所建议的那样,有一些方法可以做到这一点(${m'.$i}
),但不建议这样做
你想如何使用这个?是否可以使用数组执行此操作?因此,$m[$i]
为了获得$m[1]
,等等。此外,这有点脱离主题,养成写作的习惯
$\会话['m1']
而不是
$\会话[m1]
如果不这样做的话,有一天你可能会遇到一个奇怪的错误。我得到了这个错误::使用未定义的常量m-假设“m”信息有引号,对不起。编辑解决方案遗漏了m的引号,海报已经修复了这一点。因此,我想知道使用此数组比使用前一个数组的好处。数组是指变量列表。例如,对于一个数组,您可以请求其长度,并且可以看到其中包含哪些元素,而使用此方法必须知道确切的名称并单独跟踪。此外,数组(或其他编程语言中的列表和字典)是传统的编程概念,几乎存在于任何语言中。此外,使用(关联)数组可以实现使用这些“变量”所能做的任何事情。谢谢,现在我正在尝试实现数组,您能在这里帮助我$\u SESSION['$m[$i]]=clean($\u POST[m[$i]);我在这里做错了什么?我希望这是$\u SESSION['$m[1]]=clean($\u POST[m[1]);是否希望在会话数组中使用数组?在循环之前,要声明数组$\u session['m']=array();
并在循环中声明数组$\u session['m'][$i]=clean($\u POST['m'.$i])
。因此,多维数组只是添加了另一对括号。应该注意,可能有一种更好的方法可以实现您的目标,而不使用此PHP功能。因此,使用。根据OP的具体需要,您可能是对的。您可能可以使用:$\u GLOBALS['m'.$i]=$\u SESSION['m'.$i];