Пример #1
0
 /**
  * 异常处理回调函数
  *
  * @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);
 }
Пример #2
0
 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);
 }
Пример #3
0
 public static final function exceptionHandler($exception)
 {
     $exceptionView = View\Factory::getInstance();
     $exceptionView->setModel(Formater::exception($exception));
     return $exceptionView->display();
 }
Пример #4
0
 public static final function exceptionHandler($exception)
 {
     return Response::display(Formater::exception($exception));
 }
Пример #5
0
 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;
     }
 }