分类: C/C++
2008-05-27 21:19:46
Zend Framework的参考手册中是这样描述View Helper的:
“在你的视图部分的脚本中,经常要实现一些复杂的功能,例如,格式化一个日期、生成表单元素或显示动作链接等等。现在你可以使用helper类来为你实现这些操作。”
当前版本的ZF(0.1.3版)包含了几个表单helper,无疑将来当ZF成熟时会提供更多helper。我首先做的事情就是按照添加子类控制器建议的那样,建立类似Zend_View_Helper的目录结构:
library/ |
我的项目所需的特殊的helper文件放在library/MyProject/View/Helper/,单独存放是为了便于更新Zend核心文件。
下一步是告诉Zend_View在查找默认Zend helper目录的同时也查找定制的helper目录。这只需要编辑public_html/index.php文件,为Zend_View对象添加新的helper路径:
$view = new Zend_View; |
下一步在参考手册中已经记载的很详细了,但是为了完整性的缘故,我将会继续。建立一个新的helper文件:
class Zend_View_Helper_DoStuff { public function doStuff() |
注意:
让我觉得不对劲的地方是新的helper类必须被命名为“Zend_View_Helper_YourNameHere”,而不能是“MyProject_View_Helper_YourNameHere”,考虑到先前我提到的目录结构,它看起来有点古怪。从逻辑上来说,它是一个Zend_View的helper类,其将会同其他由你自己“命名的”子类文件被保留在MyProject目录下,这看起来似乎没有遵循惯例。
准备使用
在将新的helper文件保存为MyProject/View/Helper/DoStuff.php之后,将可以在你自己的View脚本中像这样来使用:
doStuff(); ?> |
当编写helper类的时候,关键的地方在于命名(方法)的约定,就像在我的doStuff这个例子中说明的:
像我在《getting to know Zend_View》一文中描述的那样,以上几点在继续开发后可能会有变化。
进一步阅读
查看Zend Framework参考手册中的Helpers部分