我正在尝试在 1 个代码点火器应用程序下创建多个应用程序,但是其中一些应用程序将共享相同的配置,例如数据库配置。
-application
-config
-models
-project_1
-config
-controllers
-models
-project_2
-config
-controllers
是否可以在应用程序文件夹的第一级加载配置,如果配置文件不存在,则查找应用程序级别的文件夹?我知道当我使用 add_package_path() 手动加载配置时这是可能的,但自动加载不起作用。
为什么不保持简单:
<?php
// This app has no config. Use the shared one
require_once('/path/to/common/config.php');
你应该使用包:
http://ellislab.com/codeigniter/user-guide/libraries/loader.html
我倾向于在网络根目录中创建一个名为"share"的包,即包/共享
在包文件夹中,您可以创建一个类似于核心 CI 应用程序配置、帮助程序、模型、视图等的文件夹结构。
假设您只想有一个数据库文件,您可以将数据库配置文件放在 packages/share/config 中,并在应用程序数据库文件中使用以下方法调用此文件:
include_once(FCPATH . 'packages/share/config/database.php');