error_reporting
(PHP 4, PHP 5, PHP 7)
error_reporting — 출력하는 PHP오류의 종류를 설정한다
설명
$level
] )error_reporting() 함수는 error_reporting 지시문을 실행 시 설정합니다. PHP에는 많은 오류 수준이 있어 이 함수에 의한 스크립트의 지속 시간(실행 시간)수준이 설정됩니다. 옵션level
을 지정되지 않으면 error_reporting() 는 단순히 현재의 오류 수준을 반환합니다.
파라미터
level
-
새로운error_reporting 차원. 비트 마스크 또는 이름이 붙은 정수의 어느 쪽인가입니다. 장래 버전과의 호환성을 보증하기 위해서, 이름이 붙은 정수의 사용이 적극 권장되고 있습니다. 오류 수준이 추가되면 정수의 폭은 증가합니다. 그래서 이전의 정수를 사용하는 에러 수준은 항상 기대대로 동작하지 않습니다.
이용 가능한 에러 수준 상수와 그 실제의 의미는 기정의 상수에 설명하고 있습니다.
반환 값
변경 이전 error_reporting 수준을 반환합니다.level
파라미터를 지정하지 않았다면 현재의 수준을 반환합니다.
변경 이력
버전 | 설명 |
---|---|
5.4.0 | E_STRICT 가E_ALL 포함되게 되었습니다. |
5.3.0 | E_DEPRECATED 이E_USER_DEPRECATED 추가되었습니다. |
5.2.0 | E_RECOVERABLE_ERROR 이 추가되었습니다. |
5.0.0 | E_STRICT 가 추가되었습니다(이것은E_ALL 에는 포함되지 않습니다). |
예
사례 1error_reporting() 의 예
<?php
// 모든 오류 출력을 끄고
error_reporting(0);
// 단순한 실행 시 오류를 표시하는
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// E_NOTICE 을 표시하는 것도 추천(초기화되지 않은
// 변수, 변수 이름의 철자 실수 등..)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// E_NOTICE 외의 모든 오류를 표시하는
error_reporting(E_ALL & ~E_NOTICE);
// 모든 PHP 오류를 표시한다 (Changelog 을 참조 바랍니다
error_reporting(E_ALL);
// 모든 PHP 오류를 표시하는
error_reporting(-1);
// error_reporting(E_ALL); 과 마찬가지
ini_set('error_reporting', E_ALL);
?>
주의
거의 수E_STRICT
준의 오류는 스크립트의 컴파일 시 발생합니다. 그래서 error_reporting 로 E_STRICT
를 포함하도록 설정되어 있는 환경에서는 이들의 에러를 검출할 수 없습니다(반대도 마찬가지입니다).
값을-1 지정하면, 만일 장래의 버전의 PHP 그래서 새로운 차원과 정수가 추가됐다고 해도 모든 오류를 표시하게 됩니다. E_ALL
정수도 PHP 5.4이후 이와 같은 거동이 됩니다.
속성 | 설명 |
E_ALL | 모든 에러 메시지 |
E_ERROR | 치명적인 실행오류 |
E_RECOVERABLE_ERROR | 더욱 치명적인 실행오류 |
E_WARNING | 심각하지 않은 실행오류 |
E_PARSE | 컴파일 시의 구문오류 |
E_NOTICE | 일반적인 코드, 변수 문제에 의한 오류 |
E_CORE_ERROR | 젠드엔진의 심각한 오류 |
E_CORE_WARNING | 젠드엔진의 심각하지 않은 오류 |
E_COMPILE_ERROR | 젠드엔진의 심각한 컴파일오류 |
E_COMPILE_WARNING | 젠드엔진의 심각하지 않은 컴파일오류 |
E_USER_ERROR | 사용자가 만든 오류 메시지 |
E_USER_WARNING | 사용자가 만든 경고 메시지 |
E_USER_NOTICE | 사용자가 만든 통보 메시지 |
E_DEPRECATED | 향후 버전에는 작동하지 않는다는 경고 메시지 |
E_USER_DEPRECATED | 사용자가 만든 배제된 경고 |
'Code Snippets > php' 카테고리의 다른 글
What's New in PHP 5.4 (0) | 2015.12.28 |
---|---|
함수 : set_time_limit (0) | 2015.12.11 |
함수 : array_key_exists (0) | 2015.12.10 |
함수 : ucfirst / lcfirst (0) | 2015.12.08 |
함수 : get_class() (0) | 2015.12.07 |