FuelPHP - файлы cookie и управление сеансами
Cookieобеспечивает хранилище данных на стороне клиента и поддерживает только небольшой объем данных. Обычно это 2 КБ на домен, и это зависит от браузера.Sessionобеспечивает хранение данных на стороне сервера и поддерживает большой объем данных. Давайте рассмотрим, как создать файл cookie и сеанс в веб-приложении FuelPHP.
Печенье
FuelPHP обеспечивает Cookieкласс для создания элемента cookie. Класс cookie используется для создания, назначения и удаления файлов cookie.
Настроить cookie
Класс Cookie можно настроить глобально с помощью основного файла конфигурации приложения, расположенного по адресу fuel / app / config / config.php. Это определяется следующим образом.
'cookie' => array (
//Number of seconds before the cookie expires
'expiration' => 0,
//Restrict the path that the cookie is available to
'path' => '/',
//Restrict the domain that the cookie is available to
'domain' => null,
// Only transmit cookies over secure connections
'secure' => false,
// Only transmit cookies over HTTP, disabling Javascript access
'http_only' => false,
),
Методы
Класс cookie предоставляет методы для создания, доступа и удаления элемента cookie. Они следующие -
набор()
set используется для создания переменной Cookie. Он содержит следующие аргументы,
$name - Ключ в массиве $ _COOKIE.
$value - значение куки.
$expiration - Количество секунд, в течение которых должен храниться файл cookie.
$path - Путь на сервере, на котором cookie будет доступен.
$domain - Домен, для которого доступен файл cookie.
$secure - Установите значение true, если вы хотите передавать файлы cookie только через безопасные соединения.
$httponly - Разрешить передачу файлов cookie только через HTTP, отключив доступ JavaScript.
Cookie::set('theme', 'green');
получить()
Метод get используется для чтения переменной Cookie. Он содержит следующие аргументы,
$name - Ключ в массиве $ _COOKIE.
$value - Значение, возвращаемое, если ключ недоступен в массиве $ _COOKIE.
Cookie::get('theme');
удалять()
Метод удаления используется для удаления переменной Cookie. Он содержит следующие аргументы,
$name - Ключ в массиве $ _COOKIE.
$value - значение куки.
$domain - Домен, для которого доступен файл cookie.
$secure - Установите значение true, если вы хотите передавать файлы cookie только через безопасные соединения.
$httponly - Разрешить только передачу файлов cookie через HTTP, отключив доступ JavaScript.
Cookie::delete('theme');
Сессия
FuelPHP обеспечивает класс, Session для поддержания состояния приложения.
Настроить сеанс
Класс сеанса можно настроить через специальный файл конфигурации, fuel/core/config/session.php. Некоторые из важных записей конфигурации следующие:
auto_initialize - Автоматическая инициализация сеанса.
driver- Имя драйвера сеанса. Сессия реализуется с использованием драйвера, и возможные варианты: cookie, db, memcached, redis и file. Драйвер по умолчанию - cookie.
match_ip - Проверить IP клиента.
match_ua - Проверьте клиентский пользовательский агент.
expiration_time - Значение тайм-аута сеанса в секундах.
rotation_time - Пора возобновить сеанс.
Методы сеанса
Класс сеанса предоставляет методы для управления данными сеанса. Они следующие:
пример()
В instance метод возвращает значение по умолчанию или конкретный экземпляр, который идентифицируется по имени.
$session = Session::instance(); // default instance
$session = Session::instance('myseesion'); // specific instance
набор()
В set используется для присвоения переменной сеанса.
Session::set('userid', $userid);
получить()
В get Метод позволяет извлекать сохраненные переменные из сеанса.
$userid = Session::get('userid');
удалять()
В delete позволяет удалить сохраненную переменную сеанса.
Session::delete('userid');
Создайте()
В createМетод позволяет создать новую сессию. Если сеанс уже существует, он будет уничтожен и будет создан новый сеанс.
Session::create();
уничтожить ()
В destroy используется для уничтожения существующей сессии.
Session::destroy();
читать()
В read метод позволяет читать сеанс.
Session::read();
записывать()
В write метод позволяет писать сеанс.
Session::write();
ключ ()
В keyМетод позволяет получать элементы сеансового ключа. Значение ключа уникально.
$session_id = Session::key('session_id');