PHP 异常处理类
捕获程序中的异常
try{
//出现异常和错误代码,比如文件操作,数据库操作
} catche(Exception $e){ // 异常类的对象
//输出错误信息
}
需要异常处理的代码都必须放在try 代码块内,这样就可以捕获异常,在php代码中产生的异常被throw语句抛出并被catch语句捕获,当然PHP中的catch 代码块也可以再次抛出throw异常
当异常抛出时,后面代码不会执行,PHP 就会查找匹配的 catch。如果异常没有捕获,而且又没有使用 set_exception_handler() 作处理的话,将会产生一个严重的错误,并且输出 UncaughtException...(未捕获异常)的提示信息。
try{
$err = '抛出异常信息,并跳出 try 语句块';
if(is_dir('./test')){
echo '这里是一些可能会发生异常的代码';
}else{
throw new Exception($err, 12345); // 抛出异常
}
echo '上面抛出异常的话,这行代码将不会执行,转而执行 catch 中的代码。<br>';
}catch(Exception $e){
echo '捕获异常:'.$e->getMessage().'<br>错误代码:'.$e->getCode().'<br>';
}
echo '继续执行 try catch 语句之外的代码';
输出出来的内容
代码的解释
在try 块中判断 有没有test目录, 如果没有 使用throw 抛出异常 ,
在catch 块中获取异常
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码