Example #1
0
    return $url;
}, true);
$di->set('dispatcher', function ($di) {
    $dispatcher = new Dispatcher($di);
    return $dispatcher;
}, true);
$di->set('router', function ($di) {
    $router = new Router();
    //$router->setSourceMode(Router::SOURCE_MODE_SERVER_REQUEST_URI);
    $router->setDi($di);
    $router->setDefaultNamespace('MyApp\\Controllers');
    return $router;
}, true);
$di->set('view', function ($di) {
    $view = new View();
    $view->setDi($di);
    $view->setBasePath('../src/');
    $view->setViewsDir('app/views/');
    return $view;
}, true);
$di->set('modelsManager', function ($di) {
    $manager = new ModelsManager();
    $manager->setDi($di);
    return $manager;
}, true);
Model::setup(array('di' => $di));
$di->router->add('/blog/{year}/{month}/{title}', array('controller' => 'index', 'action' => 'show', 'params' => array('year' => 1, 'month' => 2, 'title' => 3)))->setName('show-posts');
$di->router->handle();
$di->dispatcher->setNamespaceName($di->router->getNamespaceName());
$di->dispatcher->setControllerName($di->router->getControllerName());
$di->dispatcher->setActionName($di->router->getActionName());