0

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

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

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

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

4

2 回答 2

1

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

autoloader.namespace = My
autoloader.resourceTypes.exceptions.path = "library"
autoloader.resourceTypes.exceptions.namespace = "Model"
于 2010-03-23T16:53:07.437 回答
1
class My_Exception extends Zend_Exception {}

保存在:

/library/My/Exception.php

在 application.ini 中:

autoloaderNamespaces[] = "My_"

或看看resourceLoader

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

你可以这样使用它:

$this->_resourceLoader->addResourceType('exception', 'exceptions', 'My_');
于 2010-03-24T17:36:05.637 回答