zend framework的Bootstrap.php 可以任意配置文件目录结构

来源:互联网 发布:手机导航需要网络吗 编辑:程序博客网 时间:2024/06/06 03:08

Bootstrap.php 中的所有以_init开头的方法都是在加载时自动运行的,因此可以在其中添加任意以_init开头的方法。

1:_initAuthload方法 改变了application原有的目录结构,

在application目录下的models下面添加了一个ModelInterface文件夹,services目录下面添加了一个ServiceInterface文件夹,最外层的application目录下添加了一个factory文件夹

2:_initDb方法自动加载数据库配置

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
 /**
  *
  * 自动加载
  */
    public function _initAuthLoad()
    {
        $moduleLoader = new Zend_Application_Module_Autoloader(
            array(
                'namespace' => '',
                'basePath' =>APPLICATION_PATH
            )
        );
        $moduleLoader->addResourceTypes(array(
        'dbinterface' => array(
                'namespace' => 'Model_ModelInterface',
                'path'      => 'models/ModelInterface',
            ),
         'serviceinterface' => array(
                'namespace' => 'Service_ServiceInterface',
                'path'      => 'services/ServiceInterface',
            ),
              'factory'   => array(
                'namespace' => 'Factory',
                'path'      => 'factory',
            ),
        ));
        return $moduleLoader;
    }
    /**
     *
     * 加载数据库配置文件
     */
    public function _initDb(){
        $config = new Zend_Config_Ini(APPLICATION_PATH.'/configs/config.ini',null,true);
        $db = Zend_Db::factory($config->itecheasy->db->adapter,$config->itecheasy->db->toArray());
        Zend_Db_Table::setDefaultAdapter($db);
    }

}