PHP > LIBRARY > Error의 종류
 
PHP
Library
Tip&Tech
Q&A
 
PHP Function
phpschool
그누보드
LIBRARY
  HOME > PHP > LIBRARY
 
Error의 종류
작성일 : 19-01-08
조회 : 134  

Error의 종류

1. Notice - 작은 에러로, script하는걸 멈추거나 하지 않고, 사용자에게 보여주지도 않음(php.ini 바꾸면 보이긴 함)

2. warning - 좀 더 심각한 에러로 사용자에게 보여주긴 하지만 script를 멈추진 않음

3. Fatal error - 심각한 에러로 script를 멈추고 사용자에게 에러를 보여줌

4. Parser erros Or syntax error - 문법적인 문제가 있는 에러로 프로그램 멈춤

5. Stirct Standards Notices - 에러는 아니고 더 좋은 php coding standards 위한 제안

1. Notice

1) E_NOTICE: Notice의 에러중 별로 치명적이지 않을 에러로 init에서 NOTICE 보이게 설정하거나

error_reporting(E_NOTICE) 통해 보이게 할 수 있음

<?php error_reporting(E_NOTICE); $x = $y + 5; echo "script is not terminated"; ?>

2) E_USER_NOTICE

유저가 trigger_error 통해 발생시킨 에러

2. Warning

1) E_WARNING

대부분의 warning이 여기 속함, 에러 메세지 뜨지만 script는 안 멈춤

<?php $fh = fopen('none-existing-file', 'r'); $a = 10; $c = $a/0; echo "<br/><br/>This text will be shown because this is a warning type error. The script execution will not be stopped"; ?>

2)E_CORE_WARNING

E_WARNING이랑 비슷하지만 PHP엔진이 시작될 때 발생하는 에러, 자체적으로(코드써서) 발생시킬 수는 없음

3)E_COMPILE_WARNING

script가 compiled 될 때에 나타나는 WARNING이다. 다른 말로는 Compile-time warning이라고도 함

(compiled 될 때에 너무 오래걸린다던지 하면 나타나는 warning)

4)E_USER_WARNING

user가 일부러 trigger_error()를 했을때에 나타나는 WARNING

5)E_DEPRECATED

이 후의 버전에서는 사용할 수 없는 code에 대한 warning

user한테 바로 보이지는 않지만 E_ALL 이용하면 이 에러 나타났을 때에 볼 수 있음

(E_DEPRECATED 뿐 아니라 발생한 모든 ERROR)

<?php error_reporting(E_ALL); $x = $y + 5; echo "script is not terminated"; ?>

6)E_USER_DEPRECATED

5)랑 마찬가지 이지만 유저가 trigger_error()로 발생시킨 DEPRECATED 에러

3. FATAL ERROR

1)E_ERROR

복구 될 수 없는 에러, script 바로 멈춤

e.g: 존재하지 않는 클래스를 instantiate(인스턴스화)하려고 할때

존재하지 않는 function 호출할 때

<?php $fh = new Test(); hello(); echo "This message will never be shown"; ?>

2)E_CORE_ERROR

PHP engine start 될 때 나타나는 fatal error로 내가 발생시키지 못함

3)E_COMPILE_ERROR

script가 compiled 될 때에 나타나는 FATAL-ERROR

<?php require ('require.php'); // 그냥 warning과 fatal error 둘 다 나타남 ?>

주의! require아니고 include인데 파일이 없다면 그냥 warning나오고 script도 멈추지 않음

4)E_USER_ERROR

user가 일부러 trigger_error()를 했을때에 나타나는 FATAL_ERROR

5)E_RECOVERABLE_ERROR

Error handler이용하면 잡을 수 있는 Fatal Error

<?php Class Test{ } $objTest = new Test

 
 

Total 77
번호 제   목 조회
공지 php 라이브러리 424
77 매직해시(MAGIC HASHES) 취약점 137
76 Trait 137
75    Trait 150
74 Overloading 142
73    Overloading 139
72 Type hinting/Type 설정하기/Throw error 134
71    Type hinting/Type 설정하기/Throw error 110
70    Type hinting/Type 설정하기/Throw error 141
69 object clone 152
68    object clone 136
67 serialize / unserialize 133
66 spl_autoload_register(오토로드) 122
65 window에서 composer깔기 140
64 Exception/try/throw/catch 140
63 Error의 종류 135
62    Error의 종류 138
61    Error의 종류 137
60 eval 134
59 Magic_methods 143
58    Magic_methods 146
 1  2  3  4  
 
개인홈페이지 덤벙닷컴은 프로그래머와 디자이너위한 IT커뮤니티 공간입니다.
Copyright ⓒ www.dumbung.com. All rights reserved.