Beispiel #1
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);
 }
Beispiel #2
0
 /**
  * @return mixed
  * @throws \Exception
  * @desc fatal error处理
  */
 public static function fatalHandler()
 {
     $error = \error_get_last();
     if (empty($error)) {
         return;
     }
     if (!in_array($error['type'], array(E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR))) {
         return;
     }
     $config = ZConfig::get('project');
     $model = ZFormater::fatal($error);
     $info['data'] = null;
     if ($config['debug_mode']) {
         $info['debug'] = $model;
     }
     Log::info([\var_export($model, true)], 'fatal');
     $info['msg'] = $model['message'];
     $info['code'] = $model['code'];
     Response::status('200');
     if ('Php' == Request::getViewMode()) {
         if ($config['debug_mode']) {
             Request::setTplFile('public/exception.php');
         } else {
             Request::setTplFile('public/error.php');
         }
     }
     Response::display($info);
 }
Beispiel #3
0
 public static final function fatalHandler()
 {
     $error = \error_get_last();
     if (empty($error)) {
         return;
     }
     if (!in_array($error['type'], array(E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR))) {
         return;
     }
     Utils::status('200');
     $exceptionView = View\Factory::getInstance();
     $exceptionView->setModel(Formater::fatal($error));
     $exceptionView->display();
 }
Beispiel #4
0
 public static final function exceptionHandler($exception)
 {
     $exceptionView = View\Factory::getInstance();
     $exceptionView->setModel(Formater::exception($exception));
     $exceptionView->display();
 }
Beispiel #5
0
 public static final function fatalHandler()
 {
     $error = \error_get_last();
     if (empty($error)) {
         return;
     }
     if (!in_array($error['type'], array(E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR))) {
         return;
     }
     Response::status('200');
     return Response::display(Formater::fatal($error));
 }
Beispiel #6
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;
     }
 }