在codeigniter中的多个应用程序之间共享配置

时间:2013-01-23 08:51:12

标签: php codeigniter

我正在尝试在1个codeigniter应用程序下创建多个应用程序,但是其中一些应用程序将共享相同的配置,例如数据库配置。

-application
  -config
  -models
  -project_1
    -config
    -controllers
    -models
  -project_2
    -config
    -controllers

是否可以在应用程序文件夹的第一级加载配置,如果配置文件不存在,则查找应用程序级别的文件夹?我知道当我使用add_package_path()手动加载配置时,有可能,但自动加载不起作用。

2 个答案:

答案 0 :(得分:2)

为什么不保持简单:

<?php

    // This app has no config. Use the shared one
    require_once('/path/to/common/config.php');

答案 1 :(得分:1)

你应该使用包:

http://ellislab.com/codeigniter/user-guide/libraries/loader.html

我倾向于在网络根目录中创建一个名为“share”的软件包,即packages / share

在您的packages文件夹中,您可以创建类似于核心CI应用程序配置,帮助程序,模型,视图等的文件夹结构。

假设您只想拥有一个数据库文件,可以将db配置文件放在packages / share / config中,并在应用程序数据库文件中使用以下命令调用此文件:

include_once(FCPATH . 'packages/share/config/database.php');