try使用多个catch捕获不同的异常
Posted 凌雨尘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了try使用多个catch捕获不同的异常相关的知识,希望对你有一定的参考价值。
目的:
使用多个catch捕获不同的异常
eg:
<?php //创建三个Exception class AException extends Exception{ function printMsg(){ echo "This is AException."; } } class BException extends Exception{ function printMsg(){ echo "This is BException."; } }class CException extends Exception{ function printMsg(){ echo "This is CException."; } } //一个try,多个catch捕获不同的异常 try{ $flag = 1; switch ($flag) { case 1: throw new AException(‘AException:‘); break; case 2: throw new BException(‘BException:‘); break; case 3: throw new CException(‘CException:‘); break; default: break; } } catch(AException $e){ echo $e->getmessage(); $e->printMsg(); } catch(BException $e){ echo $e->getmessage(); $e->printMsg(); } catch(CException $e){ echo $e->getmessage(); $e->printMsg(); } catch(Exception $e){ //这个catch主要是捕获漏网之鱼 echo $e->getmessage(); }
输出:
AException:This is AException.
以上是关于try使用多个catch捕获不同的异常的主要内容,如果未能解决你的问题,请参考以下文章