Zend framework2 创建不在zf2中工作的自定义视图辅助对象

Zend framework2 创建不在zf2中工作的自定义视图辅助对象,zend-framework2,Zend Framework2,我正在尝试在zf2中创建一个用于测试的自定义视图帮助器 我创建它如下。。。 内部应用程序\View\Helper\LiveStreaming.php <?php namespace Application\View\Helper; use Zend\View\Helper\AbstractHelper; class LiveStreaming extends AbstractHelper { public function __invoke($name = 'Unnamed'

我正在尝试在zf2中创建一个用于测试的自定义视图帮助器

我创建它如下。。。 内部应用程序\View\Helper\LiveStreaming.php

<?php
namespace Application\View\Helper;

use Zend\View\Helper\AbstractHelper;


class LiveStreaming extends AbstractHelper
{
    public function __invoke($name = 'Unnamed')
    {
         return "$name , this is Zend Framework 2 View Helper";
    }
}
?>
内部Application\Module.php

<?php
public function getViewHelperConfig()
    {
        return array(
            'factories' => array(

                'liveStreaming' => function($name) {
                    return new View\Helper\LiveStreaming($name);
                },
            ),
        );
    }
?>
现在,我在不同的模型调用新闻中调用该视图

News\view\News\News\index.phtml

<?php echo $this->liveStreaming('Ivan Gospodinow'); ?>
它没有给出任何回应。你能告诉我我哪里做错了吗。我检查了几乎所有的stackoverflow示例,但没有得到我的答案


先谢谢你

这里不需要工厂。替换

       'factories' => array(

            'liveStreaming' => function($name) {
                return new View\Helper\LiveStreaming($name);
            },
        ),


在你的Module.php中

嗨,罗尼,非常感谢你的回答。但还是一样的错误。现在,我的Module.php类似于公共函数getViewHelperConfig{return array'invokables'=>array'liveStreaming'=>Application\View\Helper\liveStreaming';}它总是给出500个内部服务器错误。我模拟了您的情况,没有出现任何问题。因此,请尝试启用您的错误。嗨,Ronnie,这是一个致命错误:在/Applications/MAMP/htdocs/myproject/vendor/zendframework/zendframework/library/Zend/ServiceManager/AbstractPluginManager.php中找不到类“Application\View\Helper\LiveStreaming”,尽管它在Application\View\Helper\LiveStreaming.php;中。请帮帮我。如何以配置名称空间的方式删除此错误它位于Application/src/View/HelperIts中,而不提供任何响应是不可能的。如果您得到的是空白页,则可能禁用了显示错误,因此请检查错误日志以查看错误是什么。
<?php
public function getViewHelperConfig()
    {
        return array(
            'factories' => array(

                'liveStreaming' => function($name) {
                    return new View\Helper\LiveStreaming($name);
                },
            ),
        );
    }
?>