例外を使い分ける
どうやらExceptionがいっぱいあるみたいなので・・
いつの間にかExceptionの種類が増えてた - Do You PHP はてな
gotoみたいな使い方の部分、アプリのエラー、などで使い分けてみる。
<?php ... try { if (!$vo = $dao->getVo($where)) throw new ErrorException('db error'); calcValue($vo); // LogicExceptionがthrowされる可能性あり if (!$dao->save($vo)) throw new ErrorException('db error'); }catch (ErrorException $e){ $dao->abort(); return false; }catch (LogicException $e){ $dao->abort(); trigger_error('bug!'); return false; }
例外をまともに使ったことがないので、こんな書き方をしていいのかどうかわからないし、そもそも組み込みの例外クラスを利用するもんなの?それともExceptionを拡張?という疑問もある・・。
取り敢えず
http://www.javainthebox.net/publication/200309JP32/exception.html
この辺をざっと読む。
やっぱりPHPで例外は・・という気分になるな。