我正在测试我为我的客户创建的一个小wordpress插件,我在我测试的其中一台计算机上遇到了问题。我想它可能没有保存$_SESSION
数据......
它为这个foreach()
foreach ($_SESSION['page-1'] as $key => $value) {
$score += $value * 2;
}
关于这一点的奇怪之处在于它适用于我的桌面和笔记本电脑,但不适用于我正在测试的第二个桌面。
基本上foreach()
所做的是从上一页获取$_SESSION
信息,然后将其转换为当前页面的新变量。
答案 0 :(得分:1)
您的会话变量$_SESSION['page-1']
似乎不是数组。
只需在进入foreach之前检查它:
if (is_array($_SESSION['page-1'])) {
foreach (...) {
...
}
}
它是以下任何一种:
$_SESSION['page-1']
设置为数组,但与任何其他类型一样。session_start
),或者您的脚本中存在逻辑错误导致$_SESSION['page-1']
无法设置或在某些时候未设置,从而导致{{1触发错误。请记住:您必须以:
开始会话foreach (NULL as ...)
每次您尝试获取或设置会话变量。否则,您只是设置或检索未定义的变量。