php – Phalcon中的交叉控制器变量
作者:互联网
为了保持我的代码DRY,我希望能够定义“交叉控制器”变量.
经典的例子是我想访问我的bootstap中加载的一些配置项.
实现这一目标的最佳实践方法是什么?
蒂姆
解决方法:
您始终可以使用Di容器.
一旦在Di中注册了一个组件,它就可以通过魔术方法在控制器中使用.例如:
// Bootstrap
$configFile = ROOT_PATH . '/app/config/config.ini';
// Create the new object
$config = new \Phalcon\Config\Adapter\Ini($configFile);
// Store it in the Di container
$this->di->setShared('config', $config);
在你的控制器中,它很简单:
$config = $this->config;
如果创建基本控制器类,则可以根据需要在视图中传递这些对象,如下所示:
$this->view->setVar('config', $this->config);
最后,Di容器也可以充当注册表,您可以在其中存储可能要在应用程序中使用的项目.
有关引导和访问控制器中对象的示例,请查看phalcon/website存储库.它实现了自举和基本控制器模式等.
标签:phalcon,php 来源: https://codeday.me/bug/20191008/1870110.html