辛星浅析phalcon中常用的依赖注入

前端之家收集整理的这篇文章主要介绍了辛星浅析phalcon中常用的依赖注入前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

其中phalcon也使用了依赖注入,而且phalcon在启动的过程中,需要使用很多的类,这些类都是通过依赖注入来进行配置的,然后通过加载器来载入的,下面介绍一下对于经常需要注入的服务。

对于路由器router,它负责解析url参数,该类文件是 \Phalcon\Mvc\Router,它的add参数类配置一个路由,下面是一个添加的范例:

  1. $di->set('router',function () {
  2. $router = new \Phalcon\Mvc\Router();
  3. $router->add("/:module/:controller/:action/:params",array(
  4. 'module' => 1,'controller' => 2,'action' => 3,'params' => 4,));
  5. $router->setDefaultModule("entrance");
  6. $router->setDefaultController("index");
  7. $router->setDefaultAction("index");
  8. $router->notFound(
  9. array(
  10. "module" => "entrance","controller" => "index","action" => "index",)
  11. );
  12. return $router;
  13. }

对于视图view,一般我们常规的配置的范例如下:

  1. $di->set('view',function () {
  2. $view = new \Phalcon\Mvc\View();
  3. $view->setBasePath('./entrance/');
  4. $view->setViewsDir('./views/');
  5. $view->registerEngines(array(
  6. '.volt' => 'Phalcon\Mvc\View\Engine\Volt',".phtml" => 'Phalcon\Mvc\View\Engine\PHP',));
  7. return $view;
  8. });

对于url,我们需要加上,它的主要目的是避免跳转的时候出问题,常规配置:

  1. $di->set('url',function () {
  2. $url = new Phalcon\Mvc\Url();
  3. $url->setBaseUri('/star/');
  4. return $url;
  5. });

对于session,也给一个范例吧:


  1. $di->setShared('session',function () {
  2. $session = new Phalcon\Session\Adapter\Files();
  3. $session->start();
  4. return $session;
  5. });

猜你在找的设计模式相关文章