使用PHP和MYSQL进行错误处理的推荐方法
发布时间:2020-12-13 17:03:27 所属栏目:PHP教程 来源:网络整理
导读:我试图在我的 PHP Web应用程序中捕获数据库(MYSQL)错误.目前,我看到有像mysqli_error(),mysqli_errno()这样的函数用于捕获最后发生的错误.但是,这仍然需要我在我的php代码中使用重复的if / else语句来检查错误发生.您可以查看我的代码,看看我的意思.有没有更
我试图在我的
PHP Web应用程序中捕获数据库(MYSQL)错误.目前,我看到有像mysqli_error(),mysqli_errno()这样的函数用于捕获最后发生的错误.但是,这仍然需要我在我的php代码中使用重复的if / else语句来检查错误发生.您可以查看我的代码,看看我的意思.有没有更好的方法来做到这一点? (或)我应该编写自己的代码来引发异常并在一个地方捕获它们吗?此外,PDO是否会引发异常?谢谢.
function db_userexists($name,$pwd,&$dbErr) { $bUserExists = false; $uid = 0; $dbErr = ''; $db = new mysqli(SERVER,USER,PASSWORD,DB); if (!mysqli_connect_errno()) { $query = "select uid from user where uname = ? and pwd = ?"; $stmt = $db->prepare($query); if ($stmt) { if ($stmt->bind_param("ss",$name,$pwd)) { if ($stmt->bind_result($uid)) { if ($stmt->execute()) { if ($stmt->fetch()) { if ($uid) $bUserExists = true; } } } } if (!$bUserExists) $dbErr = $db->error(); $stmt->close(); } if (!$bUserExists) $dbErr = $db->error(); $db->close(); } else { $dbErr = mysqli_connect_error(); } return $bUserExists; } 解决方法
我认为例外是最好的方法.在创建对象时,PDO会抛出您只需要设置PDO :: ERRORMODE_EXCEPTION的异常.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |