Zend framework 在Zend中使用视图帮助程序

Zend framework 在Zend中使用视图帮助程序,zend-framework,Zend Framework,我是Zend的新手,我想创建一个用于创建表的类(更多是为了学习如何使用助手,而不是出于实际原因) 我已经在视图/助手中创建了一个名为Table的类,并在其中插入了以下代码: class Zend_View_Helper_Table{ public function table(){ } public function helloWorld(){ return "hello world"; } } 我增加了这一行: resources.view.

我是Zend的新手,我想创建一个用于创建表的类(更多是为了学习如何使用助手,而不是出于实际原因)

我已经在视图/助手中创建了一个名为Table的类,并在其中插入了以下代码:

class Zend_View_Helper_Table{   

public function table(){
    }

    public function helloWorld(){
       return "hello world";
    }

}
我增加了这一行:

resources.view.helperPath = APPLICATION_PATH "/views/helpers"
到我的ini文件

如何实例化这个类并在视图中使用它

我遵循了Zend上的脚本,但一直失败

干杯
John

您的类必须扩展:Zend\u View\u Helper\u Abstract

但我建议对视图帮助程序使用您自己的名称空间:

在bootstrap.php中添加:

/**
 * Initialize the autoloader
 *
 * @return Zend_Application_Module_Autoloader
 */
protected function _initAutoload()
{
    $autoloader = new Zend_Application_Module_Autoloader(array(
            'namespace' => 'My',
            'basePath'  => dirname(__FILE__),
    ));

    return $autoloader;
}
在application.ini中添加:

resources.view.helperPath.My_View_Helper = APPLICATION_PATH "/views/helpers"
把你的视图助手放进去

/views/helpers/Hello.php

class My_View_Helper_Hello extends Zend_View_Helper_Abstract
{
    /**
     * Return random quotes
     *
     * @return string quotes
     */
    public function hello()
    {
        $quotes = array(
            'test12',
            'fooBar',
        );

        $idx = array_rand($quotes);

        return $quotes[$idx];
    }
}
在您看来,只需使用:

<?php echo $this->hello;?>

您的类必须扩展:Zend\u View\u Helper\u Abstract

但我建议对视图帮助程序使用您自己的名称空间:

在bootstrap.php中添加:

/**
 * Initialize the autoloader
 *
 * @return Zend_Application_Module_Autoloader
 */
protected function _initAutoload()
{
    $autoloader = new Zend_Application_Module_Autoloader(array(
            'namespace' => 'My',
            'basePath'  => dirname(__FILE__),
    ));

    return $autoloader;
}
在application.ini中添加:

resources.view.helperPath.My_View_Helper = APPLICATION_PATH "/views/helpers"
把你的视图助手放进去

/views/helpers/Hello.php

class My_View_Helper_Hello extends Zend_View_Helper_Abstract
{
    /**
     * Return random quotes
     *
     * @return string quotes
     */
    public function hello()
    {
        $quotes = array(
            'test12',
            'fooBar',
        );

        $idx = array_rand($quotes);

        return $quotes[$idx];
    }
}
在您看来,只需使用:

<?php echo $this->hello;?>


我需要在我的控制器中写些什么来实例化它?嗯,出于某种原因,我复制了你的代码,只是对名称做了一点小小的调整,但没有乐趣。你知道我需要在别的地方安排什么吗?已经安排好了,谢谢。我在Ini中设置了变量,然后几行后意识到我正在再次清除它。我需要在控制器中编写什么来实例化它?嗯,出于某种原因,我完全复制了您的代码,但对名称做了一些小调整,但没有乐趣。你知道我需要在别的地方安排什么吗?已经安排好了,谢谢。我在Ini中设置了变量,几行后意识到我再次清除了它。