Phalcon-세션 관리
세션은 웹 사이트 또는 웹 애플리케이션과의 사용자 상호 작용을 돕는 서버 측 정보 저장소입니다. 각 세션은 브라우저가 HTTP 요청을 할 때마다 웹 서버로 전달되는 세션 ID로 고유하게 정의됩니다. 세션 ID는 저장된 모든 변수가 검색되도록 매번 내부 데이터베이스와 쌍을 이룹니다.
팔콘 세션
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;
});
세션 생성
Step 1 − 데이터를 적절하게 검색 할 수 있도록 세션을 인스턴스화하기위한 세션 컨트롤러를 만듭니다.
Step 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");
}
;
다음은 전체 세션을 파괴하는 구문입니다.
$this->session->destroy();