Учебники

Phalcon — Управление сессиями

Сеансы — это хранилище информации на стороне сервера, которое помогает пользователю взаимодействовать с веб-сайтом или веб-приложением. Каждый сеанс уникальным образом определяется идентификатором сеанса, который передается веб-серверу всякий раз, когда браузер выполняет HTTP-запрос. Идентификатор сеанса каждый раз связывается с внутренней базой данных, так что все сохраненные переменные извлекаются.

Сессии в Фальконе

Phalcon использует компоненты сеанса, которые включают в себя оболочки для доступа к данным сеанса.

Ниже приведены функции в Phalcon —

  • Данные сеанса могут быть изолированы от других компонентов в том же домене.

  • В зависимости от потребностей приложения значение сеанса может быть изменено с помощью адаптера сеанса.

Данные сеанса могут быть изолированы от других компонентов в том же домене.

В зависимости от потребностей приложения значение сеанса может быть изменено с помощью адаптера сеанса.

Начиная сессию в Phalcon

Все действия сеанса связаны с файлами адаптера, которые объявлены в файле Services.php в папке / config веб-приложения.

/** 
   * Start the session the first time some component requests the session service 
*/ 
$di->setShared('session', function () { 
   $session = new SessionAdapter(); 
   $session->start();  
   return $session; 
});

Создание сеанса

Шаг 1 — Создайте контроллер сеанса для создания экземпляра сеанса, чтобы данные могли быть получены соответствующим образом.

Командная строка

Шаг 2 — Создайте сеанс с именем и значением.

<?php  

class SessionController extends \Phalcon\Mvc\Controller { 
   public function indexAction() { 
      //Define a session variable 
      $this->session->set("user-name", "Omkar"); 
      
      //Check if the variable is defined 
      if ($this->session->has("user-name")) { 
         //Retrieve its value 
         $name = $this->session->get("user-name"); 
         echo($name); 
      } 
   } 
} 

Приведенный выше код производит следующий вывод.

Код

Удаление сеанса

Возможно уничтожить сеанс или сбросить некоторые значения переменных внутри сеанса в Phalcon.

Ниже приведен синтаксис для сброса значений переменных в сеансе.

$this->session->remove(<variable-name>); 

Как показано в примере выше, имя переменной, созданной в сеансе, представляет собой «data-content», которое можно удалить с помощью следующего кода.

public function removeAction() { 
   // Remove a session variable with associated session 
   $this->session->remove("data-content"); 
}

;

Ниже приводится синтаксис для уничтожения всего сеанса.