有關如何處理業務邏輯錯誤的任何提示?我不是指異常。 例如,免得假設我有一個類:PHP處理Bussines邏輯錯誤。也許是設計模式?
<?php
class Reactor() { // business class
public function shutdown() {
if($date > '2 pm') {
// show error message to user
echo 'you can't shutdown before 2 pm.';
} else {
// error while trying to shutdown
throw new Exception('Oh my God, it is gonna blow!!');
}
}
}
?>
真正的問題是如何傳遞的錯誤信息我的意見? 例外情況對特殊情況有好處。我非常接近將ErroMessage和ErrorCode屬性添加到基礎業務類,並在每次調用業務類方法時檢查它。
他沒有在if和else上產生錯誤。他意味着其他人應該嘗試關機,但在此過程中可能會出現錯誤。 –
@Sebastian他的意思是,如果試圖關機,他不能再產生錯誤,那麼我將更新代碼 –
是我承認,bussines錯誤應該不會生成一個異常http://stackoverflow.com/questions/534096/should-a-business-rule-violation-throw-an-exception,所以我試圖避免爲bussines logic erro捕獲custon sxceptions。我想我會去與ErrorCode和ErroMessage。感謝所有的幫助。 – uacaman