/** * 运行MVC处理模型 * @param $url_processor * @return None */ function runMVC() { $mvc = $this->urlRoute(); if ($mvc === false) { \Swoole\Http::status(404); return Swoole\Error::info('MVC Error', "url route fail!"); } //check if (!preg_match('/^[a-z0-9_]+$/i', $mvc['controller'])) { return Swoole\Error::info('MVC Error!', "controller[{$mvc['controller']}] name incorrect.Regx: /^[a-z0-9_]+\$/i"); } if (!preg_match('/^[a-z0-9_]+$/i', $mvc['view'])) { return Swoole\Error::info('MVC Error!', "view[{$mvc['view']}] name incorrect.Regx: /^[a-z0-9_]+\$/i"); } if (isset($mvc['app']) and !preg_match('/^[a-z0-9_]+$/i', $mvc['app'])) { return Swoole\Error::info('MVC Error!', "app[{$mvc['app']}] name incorrect.Regx: /^[a-z0-9_]+\$/i"); } $this->env['mvc'] = $mvc; $controller_path = self::$app_path . "/controllers/{$mvc['controller']}.php"; if (!class_exists($mvc['controller'], false)) { if (!is_file($controller_path)) { \Swoole\Http::status(404); return Swoole\Error::info('MVC Error', "Controller <b>{$mvc['controller']}</b> not exist!"); } else { require_once $controller_path; } } //服务器模式下,尝试重载入代码 if (defined('SWOOLE_SERVER')) { $this->reloadController($mvc, $controller_path); } $class = $mvc['controller']; $controller = new $class($this); if (!is_callable(array($controller, $mvc['view']))) { \Swoole\Http::status(404); return Swoole\Error::info('MVC Error!' . $mvc['view'], "View <b>{$mvc['controller']}->{$mvc['view']}</b> Not Found!"); } if (empty($mvc['param'])) { $param = null; } else { $param = $mvc['param']; } $method = $mvc['view']; $return = $controller->{$method}($param); //保存Session if ($this->session->open and $this->session->readonly === false) { $this->session->save(); } //响应请求 if ($controller->is_ajax) { header('Cache-Control: no-cache, must-revalidate'); header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Content-type: application/json'); $return = json_encode($return); } if (defined('SWOOLE_SERVER')) { return $return; } else { echo $return; } }
function delmail() { if (empty($_GET['mid'])) { die; } $id = (int) $_GET['mid']; $_m = model('UserMail'); $ms = $_m->get($id); //发信人 if ($ms->fid == $this->uid) { if ($ms->mstatus == 5) { $ms->delete(); } else { $ms->mstatus = 4; $ms->save(); } return Swoole\JS::js_back('删除成功'); } elseif ($ms->tid == $this->uid) { if ($ms->mstatus == 4) { $ms->delete(); } else { $ms->mstatus = 5; $ms->save(); } return Swoole\JS::js_back('删除成功'); } else { Swoole\Http::response('Error!'); } }