public function __construct($config = []) { Angel::$app = $this; $this->prepare($config); $this->initComponents($config); $this->initEnvironment(); }
public function getLogPath() { $dir = Angel::app()->runtimePath . DIRECTORY_SEPARATOR . "logs"; if (!is_dir($dir)) { mkdir($dir); } return $dir; }
public function init() { parent::init(); $this->cachePath = Angel::app()->runtimePath . DIRECTORY_SEPARATOR . "cache"; if (!is_dir($this->cachePath)) { FileHelper::createDirectory($this->cachePath, $this->dirMode, true); } }
public function registerSessionCookie() { if ($this->getUseCookies() && !Angel::app()->isHttpMode()) { $cookieName = ini_get("session.name"); if (empty($_COOKIE) || $_COOKIE[$cookieName] != $this->getId()) { Angel::app()->respone->setcookie($cookieName, $this->getId()); } } }
/** * get swoole_http_response * @throws Exception * @return \angel\base\Respone|swoole_http_response */ protected function getRespone() { if ($this->isHttpMode()) { return $this; } if (empty(Angel::app()->server->respone)) { throw new Exception("Respone is not availed"); } return Angel::app()->server->respone; }
/** * handel request * @param string $request */ public function handelRequest($request) { $route = $this->parseUrl($request); $class = implode("\\", ["", Angel::app()->appNamespace, "controllers", ucfirst($route['controller']) . "Controller"]); if (!class_exists($class)) { Angel::error("{$class} is not found!"); throw new NotFoundException("{$request} is not found!"); } $controller = Angel::createObject(['class' => $class, 'id' => $route['controller']]); Angel::app()->controller = $controller; return $controller->run($route['action']); }
public function init() { parent::init(); $this->pidfile = Angel::app()->runtimePath . DIRECTORY_SEPARATOR . "socket_server.pid"; $this->logfile = Angel::app()->runtimePath . DIRECTORY_SEPARATOR . "socket_server.log"; }
protected function getLayoutsFile($layout) { return implode(DIRECTORY_SEPARATOR, [Angel::app()->applicationPath, $this->viewsFolder, $this->layoutsFolder, strtolower($layout . "." . $this->suffix)]); }
/** * init global vars * * @param \swoole_http_request $request */ public function prepareRequest($request) { $_GET = isset($request->get) ? Angel::app()->request->stripSlashes($request->get) : []; $_POST = isset($request->post) ? Angel::app()->request->stripSlashes($request->post) : []; $_FILES = isset($request->files) ? $request->files : []; $_COOKIE = isset($request->cookie) ? Angel::app()->request->stripSlashes($request->cookie) : []; $_REQUEST = array_merge($_GET, $_POST, $_COOKIE); /** * convert key to upper */ $s = isset($request->server) ? $request->server : []; foreach ($request->header as $key => $value) { $_key = 'HTTP_' . strtoupper(str_replace('-', '_', $key)); $s[$_key] = $value; } $_SERVER = []; foreach ($s as $k => $v) { $_SERVER[strtoupper($k)] = $v; } Angel::app()->session->registerSessionCookie(); }
protected function saveLog($msg) { $filename = Angel::app()->runtimePath . $this->logDir . DIRECTORY_SEPARATOR . $this->shortName . '.log'; $fp = fopen($filename, "a+"); fwrite($fp, date("Y-m-d H:i:s") . " " . $msg . "\n"); fclose($fp); }
public function ajaxMsg($status, $data) { Angel::app()->respone->write(json_encode(['status' => $status, 'data' => $data])); }
/** * handel exception * @param unknown $exception */ public function handleException($exception) { Angel::error($exception); Angel::app()->end($exception->getMessage()); }