【PHP】 异常处理

PHP的异常处理一直都稀里糊涂的,今天终于抽空给搞清楚了。异常处理对程序中错误提示提供了一个很好的思路,解决了不少问题。哈哈哈哈,Happy

<?php
/**
* PHP的异常机制
* 人世间,洗衣做饭,世事无常,常常叹息,洗洗健康
* 有道是,出了异常要处理,不管不问心发慌
*
* 简单的说, 失恋 落榜 车祸 马航
* 人世间所有你能预料或是不可预料的东西都可以称为异常,
* 遇到异常就要积极的去面对处理,而不是加个@符逃避
*
* 以下为一个简单的PHP异常使用Demo
*/


//澡堂异常类
class WashException extends Exception{
	//制作马赛克的方法
	function makeMosaic(){
		echo "表担心,哥给你脸上打马赛克!";
	}

	//踢回去的方法
	function kickBack(){
		echo "Enjoy Yourself~";
	}
}

//杜蕾斯异常类
class DurexException extends Exception{
	//用毓婷的方法
	function killBaby(){
		echo "不成功,便成人!!";
	}
}


//澡堂塌了的方法
function destroy($yes=false){
	if($yes) throw new WashException("澡堂塌了!!尼玛!!坑爹呢!!!", 1);
}

//扔肥皂的方法
function soapDown($yes=false){
	if($yes) throw new WashException("我勒个去,竟然有人给我扔肥皂!", 2);
}

//跟别人媳妇霍霍的方法
function huohuo($durex="good"){
	if($durex=="bad") throw new DurexException("擦,这套套让熊孩子给扎个洞!!", 120);
}

try{
	//PHP抓到异常后会终止下面的代码执行,转而跳到异常处理当中
	// destroy(1);
	// soapDown(1);
	huohuo("bad");


}catch(WashException $e){//抓澡堂的异常

	echo $e->getMessage()."<br>";
	$code = $e->getCode();

	if($code == 1) $e->makeMosaic();
	if($code == 2) $e->kickBack(); 

}catch(DurexException $e){//抓杜蕾斯的异常

	echo $e->getMessage()."<br>";
	if($e->getCode() == 120) $e->killBaby();

}catch(Exception $e){//抓漏网之鱼

	echo $e->getMessage();

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值