2011-01-06 46 views
1

我正在学习如何使用Zend Framework。我来自一个代言人背景。Zend通用功能

我想要做的是定义一个函数,在某处执行一个非常简单而有用的函数。我主要是在视图脚本中使用该功能。我真的不想为这样一个简单的事情做一整堂课,所以我的问题是,我有没有办法将一个文件包含我所有的常规功能,我该如何去使用它?

感谢 约翰

回答

1

你在找什么是视图助手。 然而,视图助手是助手类中的一个函数。因此,只有一个视图助手可以放在一个类中。

如果您正在使用快速入门教程中使用的项目设置或由Zend_Tool生成的项目设置,则应将视图助手放入application/views/helpers目录中。

声明一个视图助手是相当简单的,很详细解释了Zend框架文档的这个页面上(我必须说,这是一个有点隐藏在文档):上图 http://framework.zend.com/manual/en/zend.view.helpers.html#zend.view.helpers.custom

一些背景资料助手以及一些标准包括在这个页面上可以找到:http://framework.zend.com/manual/en/zend.view.helpers.html

希望这有助于你在正确的方向。

+0

谢谢,我有类似的问题,我不能修复。我定义了一个叫做:class MY_View_Helper_Table extends Zend_View_Helper_Abstract的类,然后试试这个:$ this-> view-> addHelperPath('','MY_View_Helper_Table');并引用它在视图中使用:$ this-> Table-> hello(); \t但它只是失败。 – user505988 2011-01-06 22:22:09

0

如果你真的whant使用功能,可以使库类的静态方法,使一个文件夹类似这样的应用程序/库/ MyLib中,然后在引导注册MyLib中的命名空间这样

$autoloader = Zend_Loader_Autoloader::getInstance(); $autoloader->registerNamespace('MyLib');,那里面MyLib文件夹,你可以创建一个文件名MyClass,类名为MyLib_MyClass,然后在你看来你可以拨打MyLib_MyClass::staticMethod()

坚韧我建议你为此做一个视图帮手。你不会真正使用ZF中的功能,就像你曾经在CI中使用过的功能(几个月前我就是你的确切情况),ZF是关于OOP的。