PHP 오류



PHP 오류 및 로깅 소개

오류 및 로깅 기능을 사용하면 오류를 처리하고 기록할 수 있습니다.

오류 기능을 사용하면 사용자는 오류 처리 규칙을 정의하고 오류 기록 방식을 수정할 수 있습니다.

로깅 기능을 사용하면 사용자는 응용 프로그램을 기록하고 로그 메시지를 이메일, 시스템 로그 또는 기타 컴퓨터로 보낼 수 있습니다.


실행 구성

error 기능은 php.ini 구성 파일의 영향을 받습니다.

오류 및 로그 구성 옵션:

Parameters기본값Description수정 가능 범위
error_reportingNULLPHP의 오류 수준을 설정하고 현재 수준(숫자 또는 상수)을 반환합니다. PHP_INI_ALL
display_errors"1" 이 옵션은 오류 메시지를 출력의 일부로 화면에 표시할지 아니면 사용자에게 숨길지 설정합니다.
참고: 프로덕션 환경에서는 이 기능을 사용하지 마세요(개발 및 테스트 중에 사용됨)
PHP_INI_ALL
display_startup_errors"0"display_errors가 on으로 설정되어 있어도 PHP 시작 프로세스 중에 오류 메시지가 나타납니다. 표시되지 않습니다. 디버깅 목적을 제외하고는 display_startup_errors를 off로 설정하는 것이 좋습니다. PHP_INI_ALL
log_errors"0"실행 중인 스크립트의 오류 정보를 서버 오류 로그에 기록할지 error_log에 기록할지 설정합니다. 이는 서버별 구성 항목입니다. PHP_INI_ALL
log_errors_max_len"1024"log_errors의 최대 바이트 수를 설정합니다. 오류 소스에 대한 정보가 error_log에 추가됩니다. 기본값은 1024입니다. 0으로 설정하면 길이에 제한이 없습니다. 이 길이 설정은 기록된 오류, 표시된 오류 및 $php_errormsg를 제한합니다. PHP_INI_ALL
ignore_repeated_errors"0"반복되는 정보는 기록하지 마세요. ignore_repeated_source가 true로 설정되지 않은 한 동일한 파일의 동일한 코드 줄에서 반복되는 오류가 발생해야 합니다. PHP_INI_ALL
ignore_repeated_source"0"반복되는 메시지를 무시할 경우 해당 메시지의 출처도 무시됩니다. 이 설정이 켜져 있으면 중복된 메시지는 다른 파일에서 생성되었는지 또는 다른 소스 코드 줄에서 생성되었는지 여부를 기록하지 않습니다. PHP_INI_ALL
report_memleaks"1"이 매개변수가 Off로 설정되면 메모리 누수 정보가 표시되지 않습니다(stdout 또는 로그에). PHP_INI_ALL
track_errors"0"켜면 마지막 오류는 항상 $php_errormsg 변수에 존재합니다. PHP_INI_ALL
html_errors"1"오류 메시지에서 HTML 태그를 닫습니다. PHP_INI_ALL
PHP_INI_SYSTEM in PHP <= 4.2.3.
xmlrpc_errors"0"일반 오류 보고를 끄고 오류 형식을 XML-RPC 오류 메시지 형식으로 설정하세요. PHP_INI_SYSTEM
xmlrpc_error_number"0"은 XML-RPC FaultCode 요소의 값으로 사용됩니다. PHP_INI_ALL
docref_root""새 오류 메시지 형식에는 오류를 자세히 설명하거나 오류를 발생시킨 기능을 설명하는 해당 참조 페이지가 포함되어 있습니다.
매뉴얼 페이지를 제공하기 위해서는 PHP 공식 사이트에서 해당 언어 매뉴얼을 다운로드하고 ini에 URL을 로컬 해당 주소로 설정하면 됩니다.
"/manual/"을 사용하여 매뉴얼의 로컬 복사본에 액세스할 수 있는 경우 간단히 docref_root=/manual/을 설정하면 됩니다.
또한 로컬 파일 docref_ext=.html의 접미사와 일치하도록 docref_ext를 설정해야 합니다. 물론 외부 참조 주소를 설정할 수도 있습니다.
예를 들어 docref_root=http://manual/en/ 또는 docref_root="http://landonize.it/?how=url&theme=classic&filter=Landon &url=http%3A%2F%2Fwww.php.net%2F로 설정할 수 있습니다. "
PHP_INI_ALL
docref_ext""docref_root를 참조하세요.PHP_INI_ALL
error_prepend_stringNULL오류 이전의 콘텐츠 출력 메시지. PHP_INI_ALL
error_append_stringNULL오류 메시지 이후 출력되는 내용입니다. PHP_INI_ALL
error_logNULL스크립트 오류를 ​​기록할 파일을 설정합니다. 파일은 웹 서버 사용자가 쓸 수 있어야 합니다. PHP_INI_ALL

Installed

오류 및 로깅 기능은 PHP 코어의 일부입니다. 이 기능을 사용하기 위해 설치가 필요하지 않습니다.


PHP 오류 및 로깅 기능

PHP: 이 기능을 지원하는 최초의 PHP 버전을 나타냅니다.

FunctionDescriptionPHP
debug_backtrace()역추적을 생성합니다. 4
debug_print_backtrace()역추적을 인쇄합니다. 5
error_get_last()마지막으로 발생한 오류를 가져옵니다. 5
error_log()서버 오류 로그, 파일 또는 원격 대상으로 오류를 보냅니다. 4
error_reporting()보고할 오류를 지정합니다. 4
restore_error_handler()이전 오류 처리기를 복원합니다. 4
restore_Exception_handler()이전 예외 처리기를 복원합니다. 5
set_error_handler()사용자 정의 오류 처리 기능을 설정합니다. 4
set_Exception_handler()사용자 정의 예외 처리 함수를 설정합니다. 5
trigger_error()사용자 정의 오류 메시지를 생성합니다. 4
user_error()trigger_error() 별칭. 4


PHP 오류 및 로깅 상수

PHP: 이 상수를 지원하는 최초의 PHP 버전을 나타냅니다.

ValueConstantDescriptionPHP
1E_ERROR 런타임 시 치명적인 오류가 발생했습니다. 수정할 수 없는 오류입니다. 스크립트 실행을 중지합니다.
2E_WARNING런타임에 치명적이지 않은 오류가 발생했습니다. 스크립트 실행이 중지되지 않습니다.
4E_PARSE컴파일 중 구문 분석 오류가 발생했습니다. 구문 분석 오류는 구문 분석기에 의해서만 생성되어야 합니다.
8E_NOTICE런타임 알림. 스크립트 검색은 버그일 수 있지만 스크립트를 정상적으로 실행할 때도 발생할 수 있습니다.
16E_CORE_ERRORPHP를 시작할 때 치명적인 오류가 발생했습니다. 이는 PHP 코어의 E_ERROR와 같습니다. 4
32E_CORE_WARNINGPHP 시작 시 치명적이지 않은 오류가 발생했습니다. 이는 PHP 코어의 E_WARNING과 같습니다. 4
64E_COMPILE_ERROR컴파일 중 치명적인 오류가 발생했습니다. 이는 Zend 스크립팅 엔진에서 생성된 E_ERROR와 같습니다. 4
128E_COMPILE_WARNING컴파일 중 치명적이지 않은 오류가 발생했습니다. 이는 Zend 스크립팅 엔진에서 생성된 E_WARNING과 같습니다. 4
256E_USER_ERROR사용자가 치명적인 오류를 생성했습니다. 이는 프로그래머가 PHP 함수 Trigger_error()를 사용하여 생성한 E_ERROR와 같습니다. 4
512E_USER_WARNING사용자가 생성한 치명적이지 않은 오류입니다. 이는 프로그래머가 PHP 함수 Trigger_error()를 사용하여 생성한 E_WARNING과 같습니다. 4
1024E_USER_NOTICE사용자 생성 알림. 이는 프로그래머가 PHP 함수 Trigger_error()를 사용하여 생성한 E_NOTICE와 같습니다. 4
2048E_STRICT런타임 알림. PHP는 코드 상호 운용성과 호환성을 향상시키기 위해 코드를 변경할 것을 권장합니다. 5
4096E_RECOVERABLE_ERROR캐치 가능한 치명적인 오류입니다. 이는 사용자 정의 핸들(set_error_handler() 참조)에 의해 포착될 수 있는 E_ERROR와 같습니다. 5
6143E_ALLE_STRICT를 제외한 모든 오류 및 경고 수준(E_STRICT는 PHP 6.0부터 E_ALL의 일부가 됨). 5