/** * 异常处理回调函数 * * @param \Exception $exception */ public static function exceptionHandler(\Exception $exception) { $config = ZConfig::get('project'); $model = ZFormater::exception($exception); Log::info([\var_export($model, true)], 'exception'); $info = array(); $codeArr = explode('_', $exception->realCode); if (count($codeArr) > 1) { $model['code'] = intval($codeArr[0]); $model['message'] = $codeArr[1]; } if ($config['debug_mode']) { $info['debug'] = $model; } $info['msg'] = $model['message']; $info['code'] = $model['code']; if ('Php' == Request::getViewMode()) { if ($config['debug_mode']) { Request::setTplFile('public/exception.php'); } else { Request::setTplFile('public/error.php'); } } Response::display($info); }
public function onRequest($request, $response) { $param = []; if (!empty($request->get)) { $param = $request->get; } if (!empty($request->post)) { $param += $request->post; } Request::parse($param); try { $result = ZRoute::route(); } catch (\Exception $e) { $model = Formater::exception($e); $model['_view_mode'] = 'Json'; $result = Response::display($model); } $response->end($result); }
public static final function exceptionHandler($exception) { $exceptionView = View\Factory::getInstance(); $exceptionView->setModel(Formater::exception($exception)); return $exceptionView->display(); }
public static final function exceptionHandler($exception) { return Response::display(Formater::exception($exception)); }
private function _route($data) { try { $server = Protocol\Factory::getInstance(ZConfig::getField('socket', 'protocol', 'Rpc')); $server->parse($data); $result = Core\Route::route($server); return $result; } catch (\Exception $e) { $result = Formater::exception($e); ZPHP\Common\Log::info('zchat', [var_export($result, true)]); return null; } }