Zend框架 - 从/ Application / Api文件夹自动加载的最佳方式

时间:2012-01-23 23:54:43

标签: zend-framework

我正在尝试从应用程序本身包含的文件夹中自动加载类。

E.G。

/Application
    |->Models
    |->Custom
      |->Object.php

这是最好的方法吗(来自bootstrap.php)?

public function _initAutoLoad()
{
    $resourceLoader = new Zend_Loader_Autoloader_Resource(array(
        'basePath'  => APPLICATION_PATH,
        'namespace' => '',
        'resourceTypes' => array(
                'custom' => array(
                    'path'      => 'custom/',
                    'namespace' => 'Custom',
                ))
    ));
}

在任何控制器中的意思,我可以打电话:

  

$ object = new Custom_Object();

2 个答案:

答案 0 :(得分:2)

如果您不打算使用应用程序命名空间(默认Application)为类名添加前缀,我只需将这些内容放在library中,例如

library/
    Custom/
        Object.php -> class Custom_Object

然后将您的Custom命名空间添加到配置中的自动加载器(application.ini

autoloadernamespaces[] = "Custom_"

如果您的类代表某种服务,您可以使用自动自动加载的内置Service资源类型

application/
    services/
        Object.php -> class Application_Service_Object

答案 1 :(得分:0)

看起来我拥有的解决方案是最好的...我无论如何都能找到......