1

我搜索了很多关于如何在 Zend Framework 中自动加载类的文章。他们中的大多数人使用我认为很复杂的Zend_Loader_Autoloader_Resourceor 。Zend_Application_Module_Autoloader

我找到一个线程说一个使用自动加载的简单方法,只需要编辑 index.php 并添加一个新的资源方法。

例如,我希望模型类可以自动加载。我编辑代码如下:

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    get_include_path(),***realpath(APPLICATION_PATH . '/models')***
)));

而Bootstrap.php中的资源方法:

protected function _initAutoload()
{
    $autoloader = Zend_Loader_Autoloader::getInstance();
    $autoloader->setFallbackAutoloader(true);

}

就这样。

因此,如果我有一个名为 mymodel 的模型,它将自动加载。如果模型在 myfolder/mymodel 之类的文件夹中,则需要将类名更改为 myfolder_mymodel。

所以我觉得这种风格很简单。但我的问题是,为什么很少有人像这样自动加载?

这种方式有什么缺点吗?

4

0 回答 0