какое-либо тело имеет какую-либо информацию/ссылки относительно того, как интегрировать основанную на cookie систему сессии? я использовал file/mysql, и в настоящее время использую memcached., который я хотел играть с apc сессиями, но думал, что дам движение в cookie, только я не знаю много об этом.
я предполагаю, что должен был бы записать свой собственный класс обработчика сессий?
В сессии PHP данные обычно хранятся в файле. Единственное, что хранится в cookie - это идентификатор сессии. Когда сессия включена и найден корректный куки-сессия, PHP загружает данные о сессии из файла в супер глобальную под названием SESSION.
Базовые сессии начинаются с помощью session_start();
, вызываемого перед отправкой какого-либо текста в браузер. Затем элементы добавляются в объект сессии или удаляются из него с помощью простой индексации массива, например,
$_SESSION['favcolour'] = 'blue';
позже.....
$favcolour = $_SESSION['favcolour'];
сеансы базовой куки-файлов (без локального хранилища) могут быть созданы с помощью вызова функции
set_cookie('favcolour','blue'[,other params]);
до отправки текста в браузер, а затем извлечены из куки-файлов суперглобальной
$favcolour = $_COOKIE['favcolour'];
, вам не нужно вызывать session_start()
, если вы делаете куки-файлы только для сеансов.
дополнительные [,другие параметры] более продвинутые и о них можно прочитать здесь http://www.php.net/manual/en/function.setcookie.php
Сессии могут стать очень сложной дискуссией, я бы предложил провести в них легкую работу, а затем расширить свои знания.
DC
все, что вы когда-либо хотели узнать о сессиях PHP
http://www.php.net/manual/en/book.session.php
DC
Для повторного использования кода обработки сессий PHP вам нужно будет добавить обработчик записи с помощью session_set_save_handler
, а затем ничего не делать в этом обработчике. Это связано с тем, что он вызывается после того, как вывод в браузер закрыт, поэтому вы не можете ничего отправить в браузер.
Перед записью не заголовочных данных в браузер используйте функции set_cookie и сохраняйте содержимое массива $_SESSION (после сериализации и шифрования) в куки. При запуске приложений вы можете прочитать куки-файлы без сериализации и поместить их в массив $_SESSION.
Это быстрый намек на то, что делать, так как я никогда этого не делал, я предпочитаю писать свой собственный код cookie. Может быть, есть какие-то gotcha's, но это не сложно, несколько тестов должны найти какие-нибудь gotcha's.
DC