Установите все переменные сеанса на нормальные значения по умолчанию при создании сеанса.Если в какой-либо более поздний момент вы найдете неустановленную переменную сеанса, это ошибка.
Если пользователь выходит из системы, это не означает, что у него нет сеанса (или он должен неэто означает, что если ваша обработка сеанса похожа на большинство реализаций).То же самое касается ручного ввода URL.В какой-то момент внутренняя структура вашего приложения обязательно делает session_start()
для всех просмотров страниц.Это хорошее место для ввода значений по умолчанию.
Ввод значений по умолчанию очень прост с оператором объединения массивов:
$defaults = array(
'userid' => null,
'lang' => 'en',
);
session_start();
$_SESSION['userid'] = 42;
$_SESSION += $defaults; // will not overwrite existing values
print_r($_SESSION);
Смотрите это в действии (и, пожалуйста, игнорируйте предупреждения, связанные с невозможностью установить cookie сеанса и т. д.).