세션 설정은 쿠키와 다르므로 먼저 시작해야 합니다. PHP에서는 session_start()함수를 호출해야 PHP 핵심 프로그램이 활성화됩니다. 세션과 관련된 콘텐츠를 전송합니다. 빌드된 환경 변수 가 메모리에 미리 로드됩니다.
session_start() 함수를 사용하여 세션을 시작합니다. 구문 형식은 다음과 같습니다.
session_start(void); // 创建 Session,开始一个会话,进行 Session 初始化
session_start()
이 함수에는 매개변수가 없으며 반환 값은 TURE입니다. 이 함수에는 두 가지 주요 목적이 있습니다. 세션을 시작하고 기존 세션을 반환하는 것입니다.
웹사이트를 처음 방문할 때 session_start()
기능은 고유한 세션 ID를 생성하고 이 세션 ID를 HTTP 응답 헤더를 통해 클라이언트 쿠키에 자동으로 저장합니다. 동시에 페이지는 사용자의 세션 정보를 저장하기 위해 서버 측에 이 세션 ID로 이름이 지정된 파일을 생성합니다.
동일한 사용자가 이 웹 사이트를 다시 방문하면 클라이언트 쿠키에 저장된 세션 ID가 HTTP 요청 헤더를 통해 자동으로 가져옵니다. 이때 session_start()
기능은 대신 다른 세션 ID를 할당하지 않습니다. , 서버의 하드 디스크에서 이 세션 ID와 동일한 이름을 가진 세션 파일을 검색하고, 이 사용자에 대해 이전에 저장된 세션 정보를 읽어서, 이 사용자를 추적하기 위해 현재 스크립트에 적용합니다.
따라서 세션 중에 동일한 사용자가 서버의 모든 페이지에 액세스할 때 동일한 Session ID
을 사용하게 됩니다.
참고: 일반적으로 페이지 시작 부분에서 session_start() 함수가 호출된 다음 세션 변수가 데이터 $_SESSION
에 기록됩니다.
참고: 쿠키 기반 세션을 사용하는 경우 이 기능을 사용하여 세션을 열기 전에 출력 콘텐츠가 있을 수 없습니다. 쿠키 기반 세션이 실제로 열릴 때 session_start()
함수가 호출되어 클라이언트 컴퓨터의 쿠키에 저장되어야 하는 고유한 Session ID
을 생성하므로 브라우저는 session_start를 사용하기 전에는 어떤 출력도 생성할 수 없습니다. () 함수는 공백이더라도 작동하지 않으며, 그렇지 않으면 문자열 출력 시 오류가 발생합니다.
session_start()
함수를 사용하여 모든 스크립트에서 세션을 열지 않으려면 php.ini에서 session.auto_start = 1
을 설정하면 session_start()
를 호출할 필요가 없습니다. 세션을 사용하기 전에 항상 기능을 수행하십시오. 그러나 이 옵션을 활성화하면 몇 가지 제한 사항도 있습니다. 즉, 세션을 시작하기 전에 클래스 정의를 로드해야 하기 때문에 개체 를 세션에 넣을 수 없습니다. 따라서 일반적으로 session.auto_start
을 사용하여 세션을 여는 것은 권장되지 않습니다.
관련 주제 추천: php 세션 (사진, 동영상, 사례 포함)
위 내용은 PHP에서 세션 세션을 시작하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!