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');