본문 바로가기
PHP

[PHP] 에러 보고 받기

by teamnova 2023. 11. 29.

오늘은 PHP 스크립트를 사용해 개발하면서 특정 에러가 발생했을 때 바로 보고 받기 위해 error_reporting() 메소드 사용법을 알아보겠습니다.

 

PHP 스크립트에서 error_reporting() 메소드를 사용하는 법은 다음과 같습니다.

error_reporting(?int $error_level = null): int

$error_level :  에러 레벨의 경우 보고할 에러의 종류를 설정, 이때 $error_level에 매개변수로 값을 주지 않았을 때 기본값은 null 로 설정됩니다.

 

에러 레벨의 종류는 아래 게시물에서 확인할 수 있는데요, 총 16가지입니다.

https://stickode.tistory.com/975

 

위처럼 미리 선언된 상수 외에도 0, -1, null 등을 입력할 수 있는데요.

0과 null을 입력할 경우 모든 에러보고가 비활성화 됩니다. -1을 입력할 경우 E_ALL처럼 모든 에러를 보고하게 됩니다.

 

위 내용을 바탕으로 예제를 하나 만들어 보겠습니다.

<?php

// 모든 에러를 보고하게 설정
error_reporting(E_ALL);

// 발생된 오류를 바로 화면에 표시하기 위해 php.ini의 display_errors의 값을 1로 설정
ini_set('display_errors', 1);

// 아래 코드는 위에서 선언하지 않은 변수를 출력하는 코드로
// 에러를 발생시킵니다.
echo $foo;
?>

 

위 예제를 실행할 경우 아래와 같은 보고를 받을 수 있습니다.

Notice: Undefined variable: foo in /web/demo/error_reporting.php on line 11

이렇게 error_reporting() 메소드를 사용해서 사용자가 PHP로 개발 중 에러가 발생했을 때 바로 알아차릴 수 있게 도와주는 방법을 알아보았습니다.