Zend framework zend中的用户定义函数
我应该将用户定义的函数放在zend framework中的何处。这些函数将在许多控件、视图或模型中跨框架使用。我需要将其转换为实用程序类吗?或者我可以将其作为一组函数保存,并将其包含在index.php中Zend framework zend中的用户定义函数,zend-framework,Zend Framework,我应该将用户定义的函数放在zend framework中的何处。这些函数将在许多控件、视图或模型中跨框架使用。我需要将其转换为实用程序类吗?或者我可以将其作为一组函数保存,并将其包含在index.php中 这方面的最佳做法是什么 通常,您会将函数放入库中的一个类中,以供自动加载程序使用。使用ZF的命名约定使生活更轻松。 调整application.ini以添加命名空间。 示例: //application.ini autoloaderNamespaces[] = "My_" //this
这方面的最佳做法是什么 通常,您会将函数放入库中的一个类中,以供自动加载程序使用。使用ZF的命名约定使生活更轻松。
调整application.ini以添加命名空间。
示例:
//application.ini
autoloaderNamespaces[] = "My_"
//this would equate to the folder My in the folder library
/application
/library
/My
//any class you built would be named My_Classname and be called in your app by Classname()
<?php
class My_Classname {
public function myFunction() {
}
}
//in your conrtoller for example you might call
public function indexAction() {
$class = new My_Classname();
$class->myFunction();
//or if you declared myFunction() static...
$class = My_Classname::myFunction();
}
//application.ini
自动加载命名空间[]=“我的”
//这将等同于文件夹库中的文件夹My
/应用
/图书馆
/我的
//您构建的任何类都将被命名为My_Classname,并在应用程序中被Classname()调用
通过以下ZF目录结构实现:
为控制器生成操作帮助程序,为视图生成视图帮助程序:
在set_include_路径中设置的库文件夹中:
create library/My/View/Helper/Common.php
如下图所示:
class My_View_Helper_Common extends Zend_View_Helper_Abstract
{
public function common()
{
return $this;
}
public function getCity($id)
{
$registry = Zend_Registry::getInstance();
$DB = $registry['DB'];
$result = $DB->fetchPairs("select * from firm_dtl");
return $result;
}
}
或访问视图:
$this->common()->getCity($id);
操作帮助程序的相同过程:
Make in library/My/Action/Helper/Common.php非常感谢您提出这个想法。我刚刚实现了它,它工作得很好。