改善路由器

时间:2012-11-20 22:43:32

标签: php routes

现在,我正在尝试改进我的MVC路由器调度功能。我的主要问题是用户可以尝试访问对象,如果失败,显然会返回一个空白页面。

例如,如果我有一个名为error的对象且其中一个类方法是setType(),则用户可以输入error/settype作为URI。

所有网址都写入index.php?url=$1

$url = explode('/', trim($_SERVER['REQUEST_URI'], '/'));

    $controller = !empty($url[0])  ? $url[0]  : 'home';
    $method = !empty($url[1]) ? $url[1] : 'index';
    $params = !empty($url[2]) ? $url[2] : $_POST;


    if (class_exists($controller)){

        $dispatchedController = new $controller;

        if (! method_exists($controller, $method)){
            /**
            * Error handling
            **/
        }

        return $dispatchedController->$method($params);

    } else{
            /**
            * Error handling
            **/
    }

我怎样才能改进路由器?我认为,提供白名单或黑名单并不是很实用。

0 个答案:

没有答案