zend框架包含我的动作控制器中的另一个类

时间:2010-07-15 11:01:32

标签: zend-framework class autoload

我是zend框架中的新手,

一个简单的问题:

在我的IndexController文件中,我想实例化新类。

我把类声明的文件放在 / library

当然它在include路径(index.php)

set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    get_include_path()
)));

我收到错误:

Fatal error: Class 'Profile' not found in ....

自动加载此类的方法是什么?

谢谢!

2 个答案:

答案 0 :(得分:6)

或者,您可以将命名空间添加到自动装带器。

因此,如果您的班级名为My_Profile,并存储在library/My/Profile.php文件中,则可以将以下内容添加到application/config/application.ini

autoloadernamespaces[] = "My_"

或在Bootstrap班级_initAutoload()方法中:

Zend_Loader_Autoloader::getInstance()->registerNamespace('My_');

请参阅Zend Framework: Autoloading a Class Library

答案 1 :(得分:2)

你必须将这个类放在模型中......而不是在库中 并使用

set_include_path('./application/models'); in index.php