我很擅长在PHP中使用对象/类,我对 EXCEPTIONS , TRY 和 CATCH
感到好奇在下面的示例中,我显示了所有3个正在使用中。显然,异常是某种触发错误的方式,但我不明白为什么?在下面的代码中,我可以轻松地显示某种错误或没有异常部分的东西吗?
下面的示例是使用try和catch的示例。在我看来,与使用if / else相同。我可能错了,这就是我在不知情的情况下看到它们的方式,我意识到你可以在PHP中编写任何代码而不使用它们,那么原因是什么,使用这些东西与传统方法有什么好处?
<?PHP
// sample of using an exception
if($something === $something_else){
//do stuff
}else if($something === $something_else_again){
//do stuff
}else{
throw new Exception('Something went wrong!');
}
尝试抓住
//and try and catch
try{
$thumb = PhpThumbFactory::create('/path/to/image.jpg');
}
catch (Exception $e){
// handle error here however you'd like
}
?>
答案 0 :(得分:6)
简而言之,例外是“特殊条件,改变程序执行的正常流程”(引用维基百科)
您可能会对(至少)这几篇文章感兴趣:
他们应该给你一些有趣的元素 - 特别是第二个,“php中的例外”
(这是基本思想的一部分)的优点之一是:
try
区块catch
块答案 1 :(得分:2)
异常是将错误处理代码与“常规”代码分开的一种方法。基本上,这种策略允许您编写一段代码,而不用担心可能出现的问题(try
块)。然后,稍后,您将捕获可能在块执行期间抛出的异常并适当地处理它们。这是一种处理错误的更简洁方法。