php error 메시지 출력 방법
php 같은 interpreter 언어들은 페이지의 호출과 동시에 해석을 시작하기 때문에 디버깅이 무척 어렵다.
특히 php는 server side 언어라서 모든 처리가 끝난 후 결과만 브라우저에 현시되기 때문에 왜 오류가 나는지, 어디서 오류가 나는지. 오류로 인해 화면이 백지로 나오는 경우도 다반사다.
그럴때는 브라우저에서 오류를 확인하기 위해 다음과 같은 코드를 php 페이지 가장 상단에 삽입하자.
<?php
error_reporting(E_ALL);
ini_set("display_errors", true);
?>
자세한 내용은 다음 URL에서 확인할 수 있지만 예제 제공되는 함수와 옵션들을 보겠다.
https://www.php.net/manual/en/function.error-reporting.php
<?php
// Turn off all error reporting
error_reporting(0);
// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// Reporting E_NOTICE can be good too (to report uninitialized
// variables or catch variable name misspellings ...)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// Report all errors except E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);
// Report all PHP errors
error_reporting(E_ALL);
// Report all PHP errors
error_reporting(-1);
// Same as error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
?>
위의 오류 출력 함수를 이용한 예제를 보겠다.
예제
<?php
error_reporting(E_ALL);
ini_set("display_errors", true);
$mesg = "https://muabow.tistory.com";
echo $mes; // 변수명 오류
?>
결과
php 디버깅에 도움이 되었으면 한다.
끝.
'IT > web' 카테고리의 다른 글
[javascript] javascript IP 주소, 포트 유효성 검사 예제 (2) | 2022.01.05 |
---|---|
[PHP] top 또는 ps 에 보이는 php 프로세스명 변경 방법 (0) | 2022.01.05 |
[PHP] array_walk_recursive와 배열 순회 탐색 소스코드 공유 (0) | 2021.12.28 |
[PHP] json_decode 설명과 예제 (0) | 2021.12.28 |
[PHP] json_encode 설명과 예제 (0) | 2021.12.27 |
댓글