zend如何自定义像models这样的类自动加载?
zend的application里有个models的文件夹是存放操作数据库的类,在控制器里直接new一下就可以用了,非常方便,因此本人也新建了一个teaa的文件夹,但不知道为什么,在new的时候老是报找不到类的错误。而且我在bootstrap里已经设置了下面的自动模块加载还是报错找不到类。
protected function _initAutoloader ()
{
$moduleAutoloader = new Zend_Application_Module_Autoloader(array('namespace' => '' , 'basePath' => APPLICATION_PATH));
return $moduleAutoloader;
}
最后,我以为是路径没有导入。在引导文件index.php的set_include_path里也加上teaa文件夹的路径,奇怪的是还是报错说找不到类,请高手指点啊。
------解决方案--------------------
默认的命名空间是
Application
Zend
如果想自定义。可以使用application.ini配置文件
例如
<br /> bootstrap.class = "Bootstrap"<br /> appnamespace = "Application"<br /> autoloadernamespaces.test = "Test_"<br /> resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"<br />
<br /> <?php<br /> class Test_TestClass {<br /> public function show() {<br /> echo "show";<br /> }<br /> }<br />
<br /> public function indexAction()<br /> {<br /> $testObj = new Test_TestClass();<br /> $testObj->show();<br /> exit;<br /> }<br />