프로그래밍 언어/PHP

PHP 세션이 이미 시작되었는지 확인하는 방법

Rateye 2021. 7. 13. 10:40
728x90
반응형

 

질문 : PHP 세션이 이미 시작되었는지 확인

세션을 시작한 페이지와 세션이 시작되지 않은 페이지에서 호출되는 PHP 파일이 있습니다. session_start() 가있을 때 가끔 "세션이 이미 시작되었습니다"라는 오류 메시지가 표시됩니다. 이를 위해 다음 줄을 넣었습니다.

if(!isset($_COOKIE["PHPSESSID"]))
{
  session_start();
  }
  

하지만 이번에는 다음과 같은 경고 메시지를 받았습니다.

주의 : 정의되지 않은 변수 : _SESSION

세션이 이미 시작되었는지 확인하는 더 좋은 방법이 있습니까?

@session_start 를 사용하면 제대로 작동하고 경고가 종료됩니까?

답변

PHP> = 5.4.0, PHP 7 버전에 권장되는 방법

if (session_status() === PHP_SESSION_NONE) {
      session_start();
      }
      

참조 : http://www.php.net/manual/en/function.session-status.php

PHP 5.4.0 미만 버전

if(session_id() == '') {
          session_start();
          }
          

 

출처 : https://stackoverflow.com/questions/6249707/check-if-php-session-has-already-started
728x90
반응형