1

我已经浏览了所有 CI 文档,并对其进行了一些谷歌搜索,但我似乎仍然无法弄清楚如何在 codeigniter 中为自定义库创建配置文件。如果有人甚至可以指出我在文档中可以找到答案的方向,那将不胜感激。

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

所以我的两个问题是:

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

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

4

3 回答 3

4

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

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

  2. 然后它只是将它加载到构造函数中:

    $this->ci->load->config('tank_auth', TRUE);
    
于 2013-01-02T17:39:12.730 回答
1

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

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


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

$this->load->library('thelibrary', array('param1' => 'value1'));
于 2013-01-13T17:13:57.730 回答
0

在您的配置/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
于 2014-12-09T03:51:46.320 回答