2009-09-03 3 views
0

Как я могу сделать что-то вроде этого ниже?Как я могу показать элементы массива сеанса в PHP

<?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; 
} 
?> 

Предупреждение: Неверный аргумент поставляются для Еогеасп()

ответ

2

Ааа я получил его, я не имел значения, установленные в данном примере.

1

Вы довольно близки, но ваши установочные линии фактически не присваивают никаких значений.

$_SESSION['signup_errors']['test1'] = 'value1'; 
0

Это означает, что вы не назначили $_SESSION['signup_errors'] значение, то есть не было никаких ошибок, я думаю. Вы должны поместить следующую строку выше кода проверки ошибок:

$_SESSION['signup_errors'] = array(); 
0

Так как вы на самом деле не назначая никаких значений элементов в массиве сессии в этом разделе коды, $ _SESSION не возвращаются в виде массива, поэтому foreach получает пустую переменную и бросает ошибку.

Если вы видите сообщение об ошибке «Недопустимый аргумент, предоставленный foreach()», и вы знаете, что сессия содержит установленные вами значения, убедитесь, что сеанс запущен, используя команду php session_start();

, то вы сможете выполнить цикл сеанса и просмотреть ключ & их значения

Смежные вопросы