1. 세션이란
세션 변수는 사용자 세션(세션)에 대한 정보를 저장하거나 사용자 세션(세션)의 설정을 변경하는 데 사용됩니다. 세션 변수는 단일 사용자에 대한 정보를 저장하며 애플리케이션의 모든 페이지에서 사용할 수 있습니다.
2.php 세션 변수
컴퓨터에서 특정 세션을 운영 중인 경우 응용 프로그램을 열고, 열고, 변경한 다음 닫습니다. 그것은 대화와 매우 흡사합니다. 컴퓨터는 당신이 누구인지 알고 있습니다. 언제 앱을 열고 닫는지 알 수 있습니다. 그러나 인터넷에서는 문제가 발생합니다. HTTP 주소는 상태를 유지할 수 없기 때문에 웹 서버는 귀하가 누구인지, 무엇을 하는지 전혀 모릅니다.
PHP 세션은 이후 사용을 위해 사용자 정보(예: 사용자 이름, 구매한 항목 등)를 서버에 저장하여 이 문제를 해결합니다. 단, 세션 정보는 일시적이므로 사용자가 사이트를 떠난 후에는 삭제됩니다. 정보를 영구적으로 저장해야 하는 경우 데이터를 데이터베이스에 저장할 수 있습니다.
세션은 각 방문자에 대해 고유 ID(UID)를 생성하고 이 UID를 기반으로 변수를 저장하는 방식으로 작동합니다. UID는 쿠키에 저장되거나 URL을 통해 전달됩니다.
3.세션 열기
session_start();
<?php session_start(); $_SESSION['name'] = "admin"; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>session</title> </head> <body> </body> </html>
위 코드와 같이 원하는 시점에 세션이 오픈되었습니다. 세션에서 데이터를 저장하거나 검색하려면 먼저 세션을 열어야 합니다.
세션이 열린 후 세션에 저장된 데이터를 다른 페이지에서 호출할 수 있습니다
세션 변수 Store data
<?php session_start(); $_SESSION['name'] = "admin"; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>session</title> </head> <body> </body> </html>
이런 방식으로 $_SESSION['name']
변수에 관리자 값을 저장한 다음 세션 출력
<?php session_start(); $_SESSION['name'] = "admin"; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>session</title> </head> <body> <?php echo "欢迎您:".$_SESSION['name']."!"; ?> </body> </html>
다른 파일에
<?php
를 쓰면 echo "Welcome: ".$_SESSION['name']."!";
?>
세션에 이름 값을 출력할 수도 있습니다
세션을 삭제
일부 세션 데이터를 삭제하려면 다음을 수행하세요. unset() 또는 session_destroy() 함수를 사용하십시오.
unset() 함수는 지정된 세션 변수를 해제하는 데 사용됩니다.
session_distroy()는 일반적으로 세션을 삭제하는 데 사용됩니다.
예를 들어 두 페이지, 첫 번째 페이지, 우리는 세션을 사용하지만 두 번째 페이지
<?php
session_distroy();
?>
<🎜에 도달하면 닫히지 않습니다. >이렇게 하면 세션이 비워집니다세션과 쿠키의 차이점
1. 쿠키 데이터는 클라이언트의 브라우저에 저장되며, 세션 데이터는 서버에 저장됩니다. 2. 쿠키는 그다지 안전하지 않습니다. 다른 사람이 로컬에 저장된 COOKIE를 분석하여 COOKIE를 속일 수 있습니다.
보안을 고려하여 세션을 사용해야 합니다.
3. 세션은 일정 기간 내에 서버에 저장됩니다. 접속량이 증가하면 서버 성능을 더 많이 차지하게 됩니다
서버 성능 저하를 고려하여 COOKIE를 사용해야 합니다.
4. 단일 쿠키에 저장되는 데이터는 4K를 초과할 수 없습니다. 많은 브라우저에서는 쿠키를 최대 20개까지 저장하도록 제한합니다.
5. 개인적인 제안:
로그인 정보 등 중요한 정보를 SESSION으로 저장
기타 정보를 유지해야 하는 경우 COOKIE에 배치할 수 있습니다