클래스는 만드는 방법이 있나요이 하나PDO 자식 개체 대신 PDOException 대신 CustomException을 throw하는 방법이 있습니까?
class DB extends PDO {}
(기록을 위해 하나의 방법 (생성자) 우리는 생성자에 매개 변수를 전달하지 않으며 우리가 연결할 수 있도록 부모를 과부하이있는 $e
와
throw new CustomException($e->getMessage(), 500, array($e->...));
이 PDOException
occurre의 인스턴스 인 :
) 구성 파일을 통해하면이 같은 어떤 경우에 사용자 정의 CustomException
를 던질 수 d, try-catch 블록 내의 모든 메소드를 래핑하지 않고 기본값 PDOException
대신에?
이 이유는 무엇입니까? – Niko
@ Niko, 길고 예쁜 지루한 이야기. 내 응용 프로그램이 던질 모든 예외를 포함해야합니다 중앙화 된 CustomException 있어야합니다. 그냥 나를 믿어. PDOException을 사용하기 전에 CustomException으로 변환해야합니다. 그 후에는 할 수 없습니다. 그리고 아닙니다, PDO의 오류 모드를 일반적인 PHP 오류로 설정하고 정상적인 경고로 잡을 수 없습니다. – Shoe
어떤 시점에서 모든 예외를 잡아야하는 경우에는'catch (Exception $ e)'만 사용하는 것이 좋습니다. 그건 PDOExceptions뿐만 아니라 CustomExceptions를 잡는다. – Niko