2013-05-15 2 views
4

session_start 오류를 처리하는 일반적인 방법을 찾고 있는데 특정 오류를 처리 할 방법이 아닙니다. 치명적인 오류를 일으키는 세션 디렉토리가 가득 찬 것처럼 많은 오류가 발생할 수 있습니다. 이러한 오류를 잡아 내고 각각의 가능성에 대한 사용자 지정 처리기를 작성하지 않고도 오류를 처리하는 방법을 원합니다. 이 같은PHP session_start 일반적인 오류 처리

뭔가 (하지만이 작동하지 않는 등의) : 사전에

try{ 
    session_start(); 
}catch(Exception $e){ 
    echo $e->getMessage(); 
} 

모든 도움 감사합니다, 감사합니다.

+0

조회 [set_error_handler] (http://php.net/manual/en/function.set-error-handler.php) – Anigel

+0

참고 사항 [이 답변] (http://stackoverflow.com/questions/10331084)/오류 로깅 - 인 - 매끄러운 방법/10476589 # 10476589) 일반적으로 오류 처리. –

답변

0

일반적인 PHP 세션 함수는 예외를 발생시키지 않지만 오류를 발생시킵니다. session_start을 호출하기 전에 error handler function을 작성하고 오류 처리기를 설정하십시오.

function session_error_handling_function($code, $msg, $file, $line) { 
    // your handling code here 
} 

set_error_handler('session_error_handling_function'); 
session_start(); 
restore_error_handler(); 

그러나 이것은 세션 오류를 캡처하기위한 것입니다. 더 좋은 방법은 오류에서 예외를 생성하는 일반적인 오류 처리기를 만들고 try ... catch 블록으로 오류가 발생할 수있는 서라운드 코드 부분을 만드는 것입니다.