Неопределенный индекс: массив в параметре Name для setCookie

Я знаю, что вопросы с неопределенным индексом задавались и на них давались ответы. Но, пожалуйста, ублажи меня на секунду. Я не мог найти ответ на этот конкретный случай. (И это необычный случай.)

Это работает без проблем …

<?php
session_start();
if ( ! isset (  $_SESSION['loggedin'] ) ) {
$_SESSION['loggedin'] = FALSE;
}

$expiry = time()+60*60*9000;
setcookie('loggedin', 'foo', $expiry);

echo "sessionvalue " . $_SESSION['loggedin'] . '<br>';
echo "cookievalue " . $_COOKIE['loggedin'] . '<br>';

?>

…производя этот вывод

sessionvalue 1
cookievalue foo

Однако, когда я изменяю параметр Name в setCookie на массив, примерно так:

<?php
session_start();
if ( ! isset (  $_SESSION['loggedin'] ) ) {
$_SESSION['loggedin'] = FALSE;
}

$expiry = time()+60*60*9000;
setcookie('cookievalue[loggedin]', 'foo', $expiry);

echo "sessionvalue " . $_SESSION['loggedin'] . '<br>';
echo "cookievalue " . $_COOKIE['cookievalue[loggedin]'] . '<br>';

?>

Я получаю уведомление о неопределенном индексе так:

sessionvalue 1

Notice: Undefined index: cookievalue[loggedin] in /Applications/XAMPP/xamppfiles/htdocs/simpleauth/headersessioncookie.php on line 13
cookievalue

Что я могу объявить и как избежать «Уведомления» во втором случае?

0

Решение

echo "cookievalue " . $_COOKIE['cookievalue[loggedin]'] . '<br>';

должно быть

echo "cookievalue " . $_COOKIE['cookievalue']['loggedin'] . '<br>';
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]