我怎样才能在下面制作这样的东西?
<?PHP
$_SESSION['signup_errors']['test1'];
$_SESSION['signup_errors']['test2'];
$_SESSION['signup_errors']['test3'];
$_SESSION['signup_errors']['test4'];
foreach ($_SESSION['signup_errors'] as $key => &$value) {
echo $value;
}
?>
警告:为foreach()提供的参数无效
答案 0 :(得分:2)
啊,我知道了,我没有在这个例子中设置的值。
答案 1 :(得分:1)
你非常接近,但你的设置行实际上没有分配任何值。
$_SESSION['signup_errors']['test1'] = 'value1';
答案 2 :(得分:0)
这意味着您没有为$_SESSION['signup_errors']
分配一个值,这意味着我猜没有错误。您应该在错误检查代码上面添加以下行:
$_SESSION['signup_errors'] = array();
答案 3 :(得分:0)
由于您实际上没有为该段代码中的会话数组中的元素分配任何值,因此$ _SESSION不会作为数组返回,因此foreach正在接收一个空变量并抛出错误。
如果您看到错误消息“为foreach()提供的参数无效”并且您知道会话确实包含您已设置的值,请使用php命令session_start()确保会话已启动;
然后你就可以遍历会话数组并查看密钥&amp;他们的价值观