QQ扫一扫联系
业务异常处理使用统一的 BizException 处理。
use ModStart\Core\Exception\BizException;
// 抛出一个异常
BizException::throws('错误信息');
// 内容为空时并抛出异常
BizException::throwsIfEmpty('用户不存在', $user);
// 内容不为空时并抛出异常
BizException::throwsIfNotEmpty('用户不存在', $user);
// 条件判断并抛出异常
BizException::throwsIf('记录不存在', empty($record));
// 自定义错误页面
BizException::throws('没有权限,请升级', [
'view' => 'theme.default.pc.upgradeMember',
'viewData' => [
'username' => '张三'
]
]);
// 自定义状态页面,Web请求时会自动转换为标准错误页面,Ajax请求时会自动转换为标准返回
BizException::throws('资源不存在', [
'statusCode' => 404,
]);
BizException::throws('没有权限', [
'statusCode' => 404,
]);
BizException::throws('资源处理出错', [
'statusCode' => 500,
]);
使用 BizException 抛出的异常,异常处理模块会自动对异常进行转换。
如果请求是 Ajax ,结果会自动转换为标准返回,如图:
{
"code":-1,
"msg":"错误信息"
}
如果请求是普通页面,会转换为标准错误页面,如图: