tp5自定义异常类
如图:
BaseException需要继承 think\Exception
tp的exception机制会默认调用Handle类里面的render方法
我们现在来overwrite(重写)这个render方法,目的有下:自定义异常除了用来抛出非代码错误的用户请求错误等错误外,我们还希望自定义异常能处理代码错误的问题或是服务器上的问题,那么这时候,我们不希望这样的错误给用户知道,从安全的角度考虑的话为了防止有人恶意通过报错信息破解漏洞,overwrite后我们只要报错统一返回500服务器错误,而不是单纯的在页面上打出400错误,统一返回500是网页的response中的status就是500
overwrite render方法
overwrite之后有个地方需要注意,我们还需要在config.php中进行配置,不能少了这一步,否则调用自定义异常时会报错
config.php中:
exception_handle原本是空的,这时我们需要填好,填入自己overwrite render方法的类的路径,这里我的类是ExceptionHandler
配置完成后成功调用自定义异常