PHP 개발 기본 튜토리얼 - 세션

1. PHP 세션 소개

앞 절의 연구를 통해 쿠키는 클라이언트에 데이터를 저장하여 서버와 함께 데이터를 유지한다는 것을 알고 있습니다. . 연결되었으며 세션은 서버 측에 데이터를 저장하여 연결을 유지합니다.

PHP 세션 변수는 사용자 세션(세션)에 대한 정보를 저장하거나 사용자 세션(세션)의 설정을 변경하는 데 사용됩니다. 세션 변수는 단일 사용자에 대한 정보를 저장하며 응용 프로그램의 모든 페이지에서 사용할 수 있습니다.


2. PHP 세션 변수

컴퓨터에서 애플리케이션을 실행할 때 애플리케이션을 열고 변경한 다음 닫으세요. 그것은 대화와 매우 흡사합니다. 컴퓨터는 당신이 누구인지 알고 있습니다. 언제 앱을 열고 닫는지 알 수 있습니다. 그러나 인터넷에서는 문제가 발생합니다. HTTP 주소는 상태를 유지할 수 없기 때문에 웹 서버는 귀하가 누구인지, 무엇을 하는지 전혀 모릅니다.

PHP 세션은 이후 사용을 위해 사용자 정보(예: 사용자 이름, 구매한 항목 등)를 서버에 저장하여 이 문제를 해결합니다. 단, 세션 정보는 일시적이므로 사용자가 사이트를 떠난 후에는 삭제됩니다. 정보를 영구적으로 저장해야 하는 경우 데이터를 데이터베이스에 저장할 수 있습니다.

세션은 각 방문자에 대해 고유 ID(UID)를 생성하고 이 UID를 기반으로 변수를 저장하는 방식으로 작동합니다. UID는 쿠키에 저장되거나 URL을 통해 전달됩니다.




3. PHP 세션 시작

PHP 세션에 사용자 정보를 저장하기 전에 먼저 세션을 시작해야 합니다.

참고: session_start() 함수는 <html> 태그 앞에 배치되어야 합니다.

<?php session_start(); ?>
<html>
<body>

</body>
</html>

위 코드는 사용자 정보 저장을 시작할 수 있도록 사용자의 세션을 서버에 등록합니다. , 사용자 세션에도 UID가 할당됩니다.


4. 세션 변수 저장

세션 변수를 저장하고 검색하는 올바른 방법은 PHP $_SESSION 변수를 사용하는 것입니다.

예: 코드는 다음과 같습니다

<?php
session_start();
// 存储 session 数据
$_SESSION['views']=10000;
?>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
<?php
// 检索 session 数据
echo "浏览量:". $_SESSION['views'];
?>
</body>
</html>

출력은 오른쪽과 같습니다

아래 예에서는 간단한 페이지뷰 카운터를 만듭니다. isset() 함수는 "views" 변수가 설정되었는지 여부를 감지합니다. "views" 변수가 설정된 경우 카운터가 증가합니다. "views"가 없으면 "views" 변수를 생성하고 1로 설정합니다. 코드는 다음과 같습니다

<?php
session_start();
if(isset($_SESSION['views']))
{
	$_SESSION['views']=$_SESSION['views']+1;
}
else
{
	$_SESSION['views']=1;
}
echo "浏览量:". $_SESSION['views'];
?>

출력은 오른쪽과 같습니다

새로 고칠 때마다 조회수 1 증가


5. 세션 삭제

일부 세션 데이터를 삭제하려면 unset() 또는 session_destroy() 함수.

unset() 함수는 지정된 세션 변수를 해제하는 데 사용됩니다:

<?php
session_start();
if(isset($_SESSION['views']))
{
unset($_SESSION['views']);
}
?>
我们也可以通过调用 session_destroy() 函数彻底销毁 session:
<?php
session_destroy();
?>

참고: session_destroy()는 세션을 재설정하고 저장된 모든 세션 데이터를 잃게 됩니다.

참고: 쿠키와 세션의 차이점


지속적인 학습
||
<?php session_start(); // 存储 session 数据 $_SESSION['views']=10000; ?> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <?php // 检索 session 数据 echo "浏览量:". $_SESSION['views']; ?> </body> </html>
  • 코스 추천
  • 코스웨어 다운로드
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~