对于Zend Framework 1.10.2项目中的根“library”目录,autoload类名结构是什么?

时间:2010-03-23 14:06:53

标签: zend-framework autoload

我有一个用Zend Framework 1.10.2创建的项目。

我通常将application / models目录用于我创建的新模型文件,并且自动加载很好,例如 - My_Model_SampleClass位于application / models / SampleClass.php。

但是,我刚刚创建了一个自定义的Exception类,它不适合应用程序目录中的models目录(至少我看到它的方式,我可能在逻辑上是错误的),所以我创建了它根“库”目录,但我似乎无法找到正确的类名+文件名使用,因此自动加载将正确完成。

顺便说一下,我为我使用的所有自定义类使用命名空间,让我们假设它是“我的”。

2 个答案:

答案 0 :(得分:1)

如果你使用application.ini试试这个

autoloader.namespace = My
autoloader.resourceTypes.exceptions.path = "library"
autoloader.resourceTypes.exceptions.namespace = "Model"

答案 1 :(得分:1)

class My_Exception extends Zend_Exception {}

保存在:

/library/My/Exception.php
app.ini中的

autoloaderNamespaces[] = "My_"

或查看resourceLoader

// in Bootstrap.php
Zend_Debug::dump($this->_resourceLoader);

你可以这样使用它:

$this->_resourceLoader->addResourceType('exception', 'exceptions', 'My_');