Heim > php教程 > php手册 > Hauptteil

PHP自定义异常处理器的几种使用方法

WBOY
Freigeben: 2016-06-13 11:09:23
Original
1250 Leute haben es durchsucht

处理异常在

以下4段代码为我在waylife项目中的简单应用(非生产环境),不健壮也不美化,但该SNS项目早已经夭折。

1、异常类的层级关系:

  1. class NotFoundException extends Exception{}  
  2. class InputException extends Exception{}  
  3. class DBException extends Exception{} 


2、配置未捕捉异常的处理器:

  1. function exception_uncaught_handler(Exception $e) {  
  2. header('Content-type:text/html; charset=utf-8');  
  3. if ($e instanceof NotFoundException)  
  4. exit($e->getMessage());  
  5. elseif ($e instanceof DBException)  
  6. exit($e->getMessage());  
  7. else  
  8. exit($e->getMessage());  
  9. }  
  10. set_exception_handler('exception_uncaught_handler');  

3、在数据库连接代码,手动抛出DBException异常但未使用try…catch进行捕获处理,该异常将被PHP自定义异常处理器exception_uncaught_handler()函数处理:

  1. $this->resConn = mysql_connect ($CONFIGS['db_host'], $CONFIGS['db_user'], $CONFIGS['db_pwd']);  
  2. if (false == is_resource($this->resConn))  
  3. throw new DBException('数据库连接失败。'.mysql_error($this->resConn)); 


4、业务逻辑一瞥:

  1. if (0 != strcmp($curAlbum->interest_id, $it))  
  2. throw new NotFoundException('很抱歉,你所访问的相册不存在');  

以上就是PHP自定义异常处理器的具体使用方法。


Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!