编程语言
首页 > 编程语言> > 什么时候最好在PHP中使用异常?

什么时候最好在PHP中使用异常?

作者:互联网

我通常通过返回false来指示方法中的错误,但它并不总是在语义上与我发生冲突(因为根据方法的不同,false可能是有效的返回).

我已经研究了异常,并且想知道它们是否是一种“一刀切”的解决方案?我应该在仍然可以的地方返回false吗?

我可能在这里完全忽略了要点,所以请忍受我.

// My old way
function getProductById($id) {

    if ( ! is_numeric($id)) {
         return false;     
    }

}

// My consideration
function getProductById($id) {

    if ( ! is_numeric($id)) {
         throw new Exception('The id must be numerical!');     
    }

}

解决方法:

例外很棒!使您可以使错误处理代码远离错误代码.

您是正确的,返回false可能是函数的有效答案.如果抛出错误,也可以捕获它并做一些更有用的事情.

当我说这有助于使您的错误处理代码远离错误时,请考虑一下

try {    
    func1($a);  
    func2($b);  
    func3($c);  
} catch (Exception $e) {  
    // error handling here  
}  

因此,您无需检查每个函数是否有错误的返回值并对其执行操作.

标签:error-handling,exception,php
来源: https://codeday.me/bug/20191210/2101423.html