2013-05-08 221 views
-1

在使用try catch块来查看我的Pdo语句之后是否真的有益处?这是否会减慢你的代码?Pdo错误捕获尝试/捕获

我相信在数据库连接失败的情况下,应该尝试使用连接命令。但是,是否真的需要试着抓住每个预先准备好的声明?这些应该永远不会改变,永远不会出错。

有什么想法?

我正在使用Php和MySql。

回答

1

没有好处的:

try { 
    // exec statement 
    // exec statement 
} 
catch (Exception $e) { 
    // do nothing 
} 

如果你不打算做任何的错误,并提供合理的解决方案,那么你不妨让异常冒泡应用程序的主“出错了”错误页面。

但是你可能想这样做:

// begin transaction 
try { 
    // exec statement 
    // exec statement 
    // commit transaction 
} 
catch (Exception $e) { 
    // rollback transaction 
    // handle error or rethrow $e; 
} 

,并准备语句可以抛出异常。也许一个唯一的密钥被侵犯,或者一个外键约束等等。

但是要点是,你不要使用异常来隐藏或者静默错误。您可以使用它们来捕捉错误,进行智能处理,然后相应地继续。