大佬如下所示代码,请问咱们的异常处理如何捕获错误信息并根据错误信息给出相应的response?
我目前是在代码中加了个try-catch来处理的,不知道会不会有冲突
public function addTroubleData($inputs)
{
// $user = jwt::getUser();
try {
// 尝试插入数据
$res = Medoo::insert('trouble', $inputs);
if ($res->rowCount()) {
return ['code' => 200, 'msg' => '添加成功', 'data' => $inputs];
} else {
throw new BadRequestHttpException('添加失败, 请联系管理员');
}
} catch (\PDOException $e) {
// 捕获 PDOException 异常
if (strpos($e->getMessage(), 'Duplicate entry') !== false) {
// 检测到唯一索引冲突
throw new BadRequestHttpException('数据重复');
} else {
// 其他数据库错误
throw new BadRequestHttpException('添加失败, 请联系管理员');
}
}
}
大佬如下所示代码,请问咱们的异常处理如何捕获错误信息并根据错误信息给出相应的response?
我目前是在代码中加了个try-catch来处理的,不知道会不会有冲突
public function addTroubleData($inputs)
{
// $user = jwt::getUser();
try {
// 尝试插入数据
$res = Medoo::insert('trouble', $inputs);
if ($res->rowCount()) {
return ['code' => 200, 'msg' => '添加成功', 'data' => $inputs];
} else {
throw new BadRequestHttpException('添加失败, 请联系管理员');
}
} catch (\PDOException $e) {
// 捕获 PDOException 异常
if (strpos($e->getMessage(), 'Duplicate entry') !== false) {
// 检测到唯一索引冲突
throw new BadRequestHttpException('数据重复');
} else {
// 其他数据库错误
throw new BadRequestHttpException('添加失败, 请联系管理员');
}
}
}