PHP 세션
- 이전 페이지 PHP 쿠키
- 다음 페이지 PHP E-mail
PHP 세션 변수는 사용자 세션에 대한 정보를 저장하거나 사용자 세션 설정을 변경하는 데 사용됩니다. 세션 변수가 저장하는 정보는 단일 사용자의 것이며, 애플리케이션의 모든 페이지에서 사용할 수 있습니다.
PHP 세션 변수
애플리케이션을 실행할 때, 그것을 열고 변경을 하고 그것을 닫습니다. 이는 한 번의 세션이다. 컴퓨터는 누구인지 알고 있으며, 애플리케이션을 언제 시작했는지와 언제 종료했는지를 알고 있습니다. 그러나 인터넷에서는 문제가 발생합니다: 서버는 누구인지와 무엇을 하는지를 알 수 없으며, 이는 HTTP 주소가 상태를 유지할 수 없기 때문입니다.
PHP 세션이 사용자 정보를 저장하여 이후 사용할 수 있도록 해결합니다 (예: 사용자 이름, 구매 상품 등). 그러나 세션 정보는 일시적인 것이며, 사용자가 웹사이트를 떠나면 제거됩니다. 영구적으로 정보를 저장하려면 데이터를 데이터베이스에 저장할 수 있습니다.
세션의 작동 방식은 각 방문자에게 독특한 id (UID)를 생성하고 이 UID를 기반으로 변수를 저장하는 것입니다. UID는 쿠키에 저장되거나 URL을 통해 전달됩니다.
PHP 세션 시작
사용자 정보를 PHP 세션에 저장하기 전에 먼저 세션을 시작해야 합니다.
주석:session_start() 함수는 <html> 태그 앞에 위치해야 합니다:
<?php session_start(); ?> <html> <body> </body> </html>
위의 코드는 서버에 사용자의 세션을 등록하여 사용자 정보를 저장하고 시작할 수 있도록 하며, 사용자 세션이 UID를 할당받습니다.
Session 변수 저장
정확하게 session 변수를 저장하고 가져오는 방법은 PHP $_SESSION 변수를 사용하는 것입니다:
<?php session_start(); // store session data $_SESSION['views']=1; ?> <html> <body> <?php //retrieve session data echo "Pageviews=". $_SESSION['views']; ?> </body> </html>
출력:
Pageviews=1
아래의 예제에서, 우리는 간단한 page-view 카운터를 생성했습니다. isset() 함수는 "views" 변수가 설정되었는지 확인합니다. "views" 변수가 설정되어 있다면, 카운터를 누적합니다. "views"가 존재하지 않으면, "views" 변수를 생성하고 1로 설정합니다:
<?php session_start(); if(isset($_SESSION['views'])) $_SESSION['views']=$_SESSION['views']+1; else $_SESSION['views']=1; echo "Views=". $_SESSION['views']; ?>
Session 종료
어떤 session 데이터를 제거하려면 unset() 또는 session_destroy() 함수를 사용할 수 있습니다.
unset() 함수는 지정된 session 변수를 해제하는 데 사용됩니다:
<?php unset($_SESSION['views']); ?>
또한 session_destroy() 함수를 통해 session을 완전히 종료할 수 있습니다:
<?php session_destroy(); ?>
주석:session_destroy()은 session을 재설정하며, 모든 저장된 session 데이터를 잃게 됩니다.
- 이전 페이지 PHP 쿠키
- 다음 페이지 PHP E-mail