在CodeIgniter中为自定义库创建配置文件

时间:2013-01-02 17:35:32

标签: php codeigniter codeigniter-2

我查看了所有CI文档,并完成了一些谷歌搜索,但我仍然无法弄清楚如何在codeigniter中为自定义库创建配置文件。如果有人甚至可以指出我在文档的哪个方向,我可以找到我的答案,我将不胜感激。

我在CI中创建了一个库,它使用了几个在应用程序之间名称不同的数据库列,因此我希望这些名称存储在自定义配置文件中。然后我希望能够在库的构造中加载这些值。

所以我的两个问题是:

1.。)如何命名配置文件,如何命名该文件中的变量,以便它们不会覆盖任何其他配置变量?

2.。如何从我的库中获取值?

3 个答案:

答案 0 :(得分:4)

当我有这样的问题时,我想看看已经这样做的其他项目。我们在几乎所有的ci项目中都使用了Tank_auth。这是一个流行的身份验证库,它有自己的客户配置文件

  1. 它只是在application/config目录中创建自己的配置文件。 您可以在配置项前添加您的应用名称前缀,以确保它们是唯一的

  2. 然后它只在构造函数中loads

    $this->ci->load->config('tank_auth', TRUE);
    

答案 1 :(得分:1)

如果有config/libraryname.php文件,它将在库实例化之前自动加载。

(因此,请注意名称与CI的配置文件冲突)


附注:如果将数组作为第二个参数传递,则禁用此自动加载:

$this->load->library('thelibrary', array('param1' => 'value1'));

答案 2 :(得分:0)

在你的config /config/your_conf.php中

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$config = Array(
        'your_conf1' => 'your_conf_val1',
        'your_conf2' => 'your_conf_val2',
        'your_conf3' => 'your_conf_val3'
    );

在您的控制器中:

$this->config->load('your_conf');
var_dump((array)$this->config); //show all the configs including those in the your_conf.php