>PHP 프레임워크 >ThinkPHP >마침내 tp6의 예외 처리를 인수하기 위해 whoops를 성공적으로 사용했습니다!

마침내 tp6의 예외 처리를 인수하기 위해 whoops를 성공적으로 사용했습니다!

藏色散人
藏色散人앞으로
2021-03-05 14:00:592811검색

다음 튜토리얼 칼럼인 thinkphp에서는 whoops를 사용하여 tp6의 예외 처리를 대신하는 방법을 소개합니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!

ThinkPHP6의 비정상적인 페이지와 작별하고 맙소사!

춘절을 맞아 TP6에 익숙해지고, TP6 블로그 프로그램도 작성했는데, 시스템의 예외 페이지가 정말 골치 아프고, 어떤 코드가 문제를 일으키는지 알 수 없을 때가 많습니다. 문제.

그래서 저는 정말 whoops를 소개하고 싶었습니다. 일련의 조사 끝에 마침내 해결책을 찾았습니다.

1.composer를 통해 whoops를 설치하세요

composer require filp/whoops

다음 명령을 실행하세요. 가져온 파일에 문법 오류가 있는 경우 설치하기 전에 미리 문법 오류를 처리해야 합니다. 그렇지 않으면 오류가 항상 보고됩니다.

2. whoops를 사용하여 tp6의 예외 처리를 인계합니다.

/app/ExceptionHandle.php 파일의 render() 메서드에 다음 코드를 추가합니다.

// 添加自定义异常处理机制
if (ENV('APP_DEBUG')) {
    // 如果是HttpResponseException异常则原样输出
    // JUMP插件里的success,error和result方法均返回的是HttpResponseException异常
    if ($e instanceof HttpResponseException) {
        return $e->getResponse();
    }

    // Whoops 接管请求异常
    $whoops = new \Whoops\Run;
    $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler());
    return Response::create(
        $whoops->handleException($e),
        'html',
        500
    );
}

아래와 같이:

마침내 tp6의 예외 처리를 인수하기 위해 whoops를 성공적으로 사용했습니다!

3. 결과를 보세요

블로그 홈페이지의 index 메소드에 존재하지 않는 함수를 썼습니다:

마침내 tp6의 예외 처리를 인수하기 위해 whoops를 성공적으로 사용했습니다!

페이지를 새로고침하고 확인해보세요

마침내 tp6의 예외 처리를 인수하기 위해 whoops를 성공적으로 사용했습니다!

좋아요. 가 돌아왔습니다.

4. Postscript

thinkphp6에서 whoops를 사용하기 위해 PHP7의 예외 메커니즘을 꼼꼼히 살펴보고 마지막으로 whoops를 소개했습니다.

예외 처리를 학습하는 과정에서 저도 발견했습니다. 비즈니스 처리에는 if()else() 대신 Try()catch()를 사용해야 합니다.

PHP7에서 예외를 연구한 경험에 대해서는 나중에 별도의 기사를 작성하겠습니다.

또한 계속 진행하시기 바랍니다. 내 블로그를 팔로우하려면 http://laoliu.pro

원본 링크: http://laoliu.pro/php/6.html

위 내용은 마침내 tp6의 예외 처리를 인수하기 위해 whoops를 성공적으로 사용했습니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제