Example #1
0
require_once SYSTEM_PATH . 'core/Log.php';
require_once SYSTEM_PATH . 'core/Benchmark.php';
require_once SYSTEM_PATH . 'database/Database.php';
/*
 * 加载应用文件
 */
if (file_exists($file_path = APP_PATH . "common.php")) {
    require_once $file_path;
}
//加载APP的common文件
/*
 * 路由设置
 */
$router = new Router();
$c = $router->getController();
$m = $router->getMethod();
$router->setSuperGET();
/*
 * 实例化控制器
 */
if (class_exists($c = ucfirst($c) . "Controller")) {
    $controller = new $c();
    if (method_exists($controller, $m)) {
        $controller->before();
        $controller->{$m}();
        $controller->after();
    } else {
        show_404();
    }
} else {
    show_404();
Example #2
0
//эту функцию потом перенести в ядро
function __autoload($class_name)
{
    $config = (include 'config.php');
    $file = "include/" . $class_name . ".php";
    if (file_exists($file)) {
        include $file;
    } else {
        die("Класс {$class_name} не найден");
    }
}
Router::parse($_GET['url']);
$controller_name = Router::getController();
$controller_path = "controllers/" . Router::getController() . ".php";
$controller_method = Router::getMethod();
$params = Router::getParams();
if (file_exists($controller_path)) {
    require_once $controller_path;
    if (class_exists($controller_name)) {
        $controller = new $controller_name();
        if (method_exists($controller, $controller_method)) {
            $controller->{$controller_method}();
        } else {
            //у нас однозначно должен быть определен метод index
            $controller->index();
        }
    } else {
        die("Файл найден, но класс неопределен");
    }
} else {
Example #3
0
<?php

include "./swoole_include.php";
$http = new swoole_http_server("0.0.0.0", 9501);
$http->on('request', function ($request, $response) {
    if ($request->server['request_uri'] !== '/favicon.ico') {
        //设置参数
        $req = new Request($request);
        //var_dump( $request );
        //获取类.方法.参数
        $rou = new Router($req);
        $class = $rou->getClass();
        $method = $rou->getMethod();
        $args = $rou->getArgs();
        //按需加载类文件
        $fileName = SWOOLE_MODEL_PATH . $class . '.class.php';
        if (is_file($fileName)) {
            require_once $fileName;
        } else {
            Log::write($class . ' is not found', 'EMERG', 3, 'swoole');
            $response->end('url is error, please check your url!');
        }
        //调用回调函数,获取数据
        $data = call_user_func_array(array($class, $method), $args);
        //返回处理信息
        $res = new Response($data);
        $response->end($res->getData());
    }
});
$http->start();
Example #4
0
/**
 * Output API result
 *
 * @param bool $success Is success flag
 * @param Router $router Current instance of Router
 * @param string|array $data Output data
 */
function setResult($success, Router $router, $data = "")
{
    header("Content-Type: application/json");
    echo json_encode(array("module" => $router->getModule(), "method" => $router->getMethod(), "success" => (bool) $success, "data" => $data));
}
Example #5
0
<?php

require_once "Loader.php";
require_once 'Router.php';
include_once realpath("controllers/baseController.php");
include_once realpath("models/baseModel.php");
Loader::loadClass('Session');
Loader::loadClass('Cookie');
Session::start();
//Loader::loadClass('Cookie');
//Cookie::set('interval', "100", "1", "/", false, false);
//Cookie::set('intervalDrugi', "100", "1", "/", false, false);
//$cookie = Cookie::get("interval");
//var_dump($cookie);
//$del = Cookie::delete("intervalDrugi");
//var_dump($del);
/**
 * $_GET['rt'] automatski setova u .htaccess fajlu regularnim izrazom
 */
$route = new Router($_GET['rt']);
$controller = $route->getController();
$method = $route->getMethod();
$params = $route->getParams();
Loader::loadController($controller, $method, $params);