Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 模型中的ZF2视图辅助对象_Php_Model_Localization_Zend Framework2_View Helpers - Fatal编程技术网

Php 模型中的ZF2视图辅助对象

Php 模型中的ZF2视图辅助对象,php,model,localization,zend-framework2,view-helpers,Php,Model,Localization,Zend Framework2,View Helpers,我正在本地化在ZF2上编写的项目。在某些地方,人们在模型层中使用静态变量 public function getTransitions() { $transitions = array( static::STATE_NEEDS_REVIEW => 'Needs Review', static::STATE_NEEDS_REVISION => 'Needs Revision',

我正在本地化在ZF2上编写的项目。在某些地方,人们在模型层中使用静态变量

    public function getTransitions()
    {
        $transitions = array(
            static::STATE_NEEDS_REVIEW         => 'Needs Review',
            static::STATE_NEEDS_REVISION       => 'Needs Revision',
            static::STATE_ARCHIVED             => 'Archive'
        );
//      some code...
        return $transitions;
    }
我有用于翻译的自定义视图帮助器,它基本上是ZF2转换器的包装器,具有一些附加功能。我知道如何在视图层和控制器中使用它,如下所示:

$t = $this->getServiceLocator()->get('ViewHelperManager')->get('t');

但是如何在模型层中使用“我的视图助手?”

如果需要访问模型中的服务定位器,可以实现ServiceLocatorAwareInterface,如此处问答中所述:

但是,我建议在模型中使用视图辅助对象可能不是正确的方法。也许您可以从ViewHelper中获取相关的逻辑,并将其移动到一个服务中,您可以通过注入或在需要时创建该服务来向模型类提供该服务。视图助手随后可以使用相同的服务