PHP异常错误处理

博客介绍了PHP的异常处理。PHP代码层面报错难捕获,遇到文件找不到、数据库连接失败、调用第三方接口失败等情况,可用try - catch处理,其可嵌套,还有try - catch - finally三层嵌套。此外,还提到set_error_handler函数可自定义错误处理方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 遇到非代码的错误,而是异常

我们都知道PHP代码层面上的报错有notice,warning,error等等

但是这些错误我们都是难以捕获的(就是我们认为代码会一切正常,谁知它却报了个Bug)

而在某些情况下我们是会遇到另一种情况:

  • 文件找不到的话,我代码改怎么写
  • 数据库连接失败,我接下去代码要怎么写
  • 调用第三方接口,结果获取失败了,代码要怎么写

面对这些情况,我们最好调用 try-catch 去处理,这样很多未知的错误我们都可以捕获到

<?php
    try{
        //查找文件
        //调用各种接口
        //数据库连接等等
    }catch(Exception $e){
        //这里写捕获异常的逻辑
    }

其次 try-catch 是可以嵌套的使用的,

另外,还可以使用 try-catch-finally三层嵌套,其中try 中return 后finally会继续执行,如果finally中也有 return ; 则最终返回值为 finally 中 return 的值

try 中die 或exit后finally不会执行

try{
    //业务逻辑
}catch(Exception $e){
    //时刻准备着,解Exception
}finally{
    //这里return更优先
}

2.set_error_handler

set_error_handler  函数可以让用户自己处理/自定义错误处理方法

set_error_handler(error_function,error_types)

参数

描述

error_function

必需。规定发生错误时运行的函数。

error_types

可选。规定在哪个错误报告级别会显示用户定义的错误。默认是 "E_ALL"。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值