如何在模型或使用服务管理器(Zend 框架 2)中检索请求控制器、操作和模块名称?
How to retrieve request controller, action and module name in a model or Using Service Manager (Zend framework 2)?
我有一个模型,我在其中记录了请求详细信息。但我无法找到一种方法来检索模型中的请求详细信息。我确实在模型构造函数中接收了服务管理器。
这是我的模型,我需要在其中获取模块、控制器和操作。
class LogHelpModel {
//$sm is the service manager.
public function __construct($sm) {
//How to retrieve module/controller/action here ?
}
}
以下是我的模块配置。
public function getServiceConfig() {
return array(
'factories' => array(
Application\Model\LogHelpModel' => function($sm) {
return new LogHelpModel($sm) ;
},
)
);
}
如何在模型中获取这些细节(或使用 $sm)?
您可以获取 mvc 事件,然后是路由匹配对象,然后是 zf3 中的事件。 Polly 在 zf2 中也是一样的。这是 zf3 代码:
$sm->get('Application')->getMvcEvent()->getRoutMatch()
这就是您要找的对象。
ps:抱歉,手机中没有代码块 phone。
我有一个模型,我在其中记录了请求详细信息。但我无法找到一种方法来检索模型中的请求详细信息。我确实在模型构造函数中接收了服务管理器。
这是我的模型,我需要在其中获取模块、控制器和操作。
class LogHelpModel {
//$sm is the service manager.
public function __construct($sm) {
//How to retrieve module/controller/action here ?
}
}
以下是我的模块配置。
public function getServiceConfig() {
return array(
'factories' => array(
Application\Model\LogHelpModel' => function($sm) {
return new LogHelpModel($sm) ;
},
)
);
}
如何在模型中获取这些细节(或使用 $sm)?
您可以获取 mvc 事件,然后是路由匹配对象,然后是 zf3 中的事件。 Polly 在 zf2 中也是一样的。这是 zf3 代码:
$sm->get('Application')->getMvcEvent()->getRoutMatch()
这就是您要找的对象。
ps:抱歉,手机中没有代码块 phone。