PHP 抛出异常 vs true or false

  • 使用布尔进行逻辑处理。

$edit //一段数据库操作

if ($edit) {
            return redirect('back/label/index')->with('message', '修改成功');
} else {
            return redirect('back/label/index')->with('message', '修改失败');
}
<?php  
//创建可抛出一个异常的函数  
function checkNum($number)  
 {  
 if($number>1)  
  {  
  throw new Exception("Value must be 1 or below");  
  }  
 return true;  
 }  

//在 "try" 代码块中触发异常  
try  
 {  
 checkNum(2);  
 //If the exception is thrown, this text will not be shown  
 echo 'If you see this, the number is 1 or below';  
 }  

//捕获异常  
catch(**Exception $e**)  
 {  
 echo 'Message: ' .$e->getMessage();  
 }  
?>  

希望大神能讲下两种的区别,以及各自的好处,谢谢。

阅读 6k
3 个回答

ifelse:更加直观 适合逻辑较为简单的处理

异常:更加灵活 适合逻辑复杂 层次较多的处理

我自己平时一般使用异常来做的

第一种适合简单的交互,只要告诉用户失败/成功。第二种自己调试用的多,能够看到更多的错误原因。

因为你是在封装一个功能,用异常可以更加优雅地返回更多错误信息。不要污,要优雅(手动斜眼

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏