PHP에서는 내장 기능 세션 _start ()를 사용하여 세션을 시작합니다. 그러나 동일한 스크립트에서 함수를 반복적으로 호출하면 오류가 발생합니다. 따라서 Session_Start ()를 실행하기 전에 세션이 시작되었는지 확인하는 것이 가장 좋습니다.
이전 버전의 PHP의 경우 Session_id () 가 비어 있는지 확인하여 세션이 시작되었는지 확인할 수 있습니다.
<?php if(session_id() == ''){ session_start(); } ?>
세션이 시작되지 않으면 위 코드는 세션을 시작하여 Session_start ()가 반복적으로 호출되지 않도록합니다.
PHP 5.4.0에서 시작하여 Session_Status () 함수를 사용하여 현재 세션 상태를 얻을 수 있습니다. 이 함수는 다음 세 가지 상태 상수를 반환합니다.
<?php if(session_status() == PHP_SESSION_NONE) { session_start(); } ?>
코드는 session_status () 가 php_session_none 인지 여부를 결정하고 세션이 시작되지 않을 때 세션을 시작하므로 Session_start ()에 대한 반복 호출로 인한 오류를 피할 수 있습니다.
방법 2에 사용 된 Session_Status () 함수는 PHP 5.4.0 이상에만 적용 가능하며, PHP의 하위 버전에는 방법 1이 필요합니다.