directory search
Array Array Helper Benchmarking Benchmarking Class Caching Caching Driver Calendaring Calendaring Class CAPTCHA CAPTCHA Helper Config Config Class Cookie Cookie Helper Database Connecting to your Database Custom Function Calls Database Caching Class Database Configuration Database Forge Class Database Metadata Database Quick Start: Example Code Database Reference Database Utility Class DB Driver Reference Generating Query Results Queries Query Builder Class Query Helper Methods Transactions Date Date Helper Directory Directory Helper Download Download Helper Email Email Class Email Helper Encrypt Encrypt Class Encryption Encryption Library File File Helper File Uploading File Uploading Class Form Form Helper Form Validation Form Validation FTP FTP Class Functions compatibility_functions common_functions HTML HTML Helper HTML Table HTML Table Class Image Manipulation Image Manipulation Class Inflector Inflector Helper Input Input Class Javascript Javascript Class Language Language Class Language Helper Loader Loader Class Migrations Migrations Class Number Number Helper Output Output Class Pagination Pagination Class Path Path Helper Security Security Class Security Helper Session Session Library Shopping Cart Shopping Cart Class Smiley Smiley Helper String String Helper Template Parser Template Parser Class Text Text Helper Trackback Trackback Class Typography Typography Class Typography Helper Unit Testing Unit Testing Class URI URL User Agent XML XML-RPC and XML-RPC Server Zip Encoding Zip Encoding Class XML-RPC and XML-RPC Server Classes XML Helper User Agent Class URL Helper URI Class
characters

Config类提供了一种检索配置首选项的方法。这些首选项可以来自默认配置文件(application / config / config.php)或来自您自己的自定义配置文件。

注意

该类由系统自动初始化,因此不需要手动执行。

  • 使用配置类

    • 手动加载

    • 自动加载

    • 解析配置文件

    • 加载配置文件

 -  [获取配置项目](about:blank#fetching-config-items)-  [设置配置项目](about:blank#setting-a-config-item)-  [环境](about:blank#environments)

  • 类参考

使用配置类

解析配置文件

默认情况下,CodeIgniter有一个主配置文件,位于application / config / config.php。如果您使用文本编辑器打开文件,您会看到配置项存储在名为$ config的数组中。

您可以将自己的配置项添加到该文件中,或者如果您希望将配置项保持分离(假设您甚至需要配置项),则只需创建自己的文件并将其保存在配置文件夹中即可。

注意

如果您创建自己的配置文件,请使用与主配置文件相同的格式,将您的项目存储在名为$ config的数组中。CodeIgniter将智能地管理这些文件,因此即使数组具有相同的名称(假设数组索引没有与另一个命名相同),也不会发生冲突。

加载配置文件

注意

CodeIgniter会自动加载主配置文件(application / config / config.php),所以如果你创建了自己的配置文件,你只需要加载一个配置文件。

有两种方法来加载配置文件:

手动加载

要加载您的一个自定义配置文件,您将在需要它的控制器中使用以下功能:

$this->config->load('filename');

其中filename是配置文件的名称,不带.php文件扩展名。

如果你需要加载多个配置文件,通常它们会被合并到一个主配置数组中。但是,如果在不同的配置文件中具有相同名称的数组索引,则可能会发生名称冲突。为避免冲突,您可以将第二个参数设置为TRUE,并将每个配置文件存储在与配置文件的名称相对应的数组索引中。例:

// Stored in an array with this prototype: $this->config['blog_settings'] = $config$this->config->load('blog_settings', TRUE);

请参阅下面的“获取配置项目”一节,了解如何以这种方式设置配置项目。

第三个参数允许您在配置文件不存在的情况下抑制错误:

$this->config->load('blog_settings', FALSE, TRUE);

自动加载

如果您发现您需要全局特定的配置文件,则可以让系统自动加载它。为此,打开位于application / config / autoload.php 的autoload.php文件,并按照文件中的说明添加配置文件。

获取配置项目

要从配置文件中检索项目,请使用以下函数:

$this->config->item('item_name');

其中,item_name是要检索的$ config数组索引。例如,要获取您的语言选择,您需要执行以下操作:

$lang = $this->config->item('language');

如果您尝试获取的项目不存在,该函数将返回NULL。

如果您使用$ this-> config-> load函数的第二个参数来将您的配置项分配给特定的索引,您可以通过在$ this-> config->第二个参数中指定索引名称来检索它。 > item()函数。例:

// Loads a config file named blog_settings.php and assigns it to an index named "blog_settings"
$this->config->load('blog_settings', TRUE);
// Retrieve a config item named site_name contained within the blog_settings array
$site_name = $this->config->item('site_name', 'blog_settings');
// An alternate way to specify the same item:
$blog_config = $this->config->item('blog_settings');
$site_name = $blog_config['site_name'];

设置配置项

如果您想要动态设置配置项目或更改现有项目,可以使用以下方法:

$this->config->set_item('item_name', 'item_value');

其中item_name是要更改的$ config数组索引,item_value是其值。

环境

您可能根据当前环境加载不同的配置文件。环境常量在index.php中定义,并在“处理环境”部分详细介绍。

要创建环境特定的配置文件,请在application / config / {ENVIRONMENT} / {FILENAME} .php中创建或复制配置文件

例如,要创建一个仅限产品的config.php,您应该:

  1. 创建目录application / config / production /

  2. 将你现有的config.php复制到上面的目录中

  3. 编辑application / config / production / config.php,使其包含您的生产设置

当您将环境常量设置为“生产”时,将加载新生产型config.php的设置。

您可以将以下配置文件放置在环境特定的文件夹中:

  • 默认的CodeIgniter配置文件

  • 您自己的自定义配置文件

注意

CodeIgniter总是首先加载全局配置文件(即application / config /中的文件),然后尝试加载当前环境的配置文件。这意味着您没有义务将所有配置文件放置在环境文件夹中。只有在每个环境中更改的文件。另外,您不必复制环境配置文件中的所有配置项目。只有您希望为您的环境更改的配置项目。环境文件夹中声明的配置项总是覆盖全局配置文件中的配置项。

类参考

class CI_Config$config

所有加载配置值的数组

$is_loaded

所有加载的配置文件的数组

item($item[, $index=''])

参数:

$ item(string) - 配置项目名称$ index(string) - 索引名称

返回:

配置项目值或NULL,如果未找到

返回类型:

杂类

  • $ itemstring) - 配置项目名称

  • $ indexstring) - 索引名称

返回:配置项值或NULL,如果未找到
返回类型:混合
取一个配置文件项目。

set_item($item, $value)

参数:

$ item(string) - 配置项目名称$ value(字符串) - 配置项目值

返回类型:

空虚

  • $ itemstring) - 配置项目名称

  • $ value字符串) - 配置项目值

返回类型:void
将配置文件项目设置为指定值。

slash_item($item)

参数:

$ item(string) - 配置项目名称

返回:

使用尾部正斜杠配置项目值,如果未找到,则使用NULL

返回类型:

  • $ itemstring) - 配置项目名称

返回:使用尾部正斜杠配置项目值,如果未找到则为NULL
返回类型:混合
这个方法和`item()`是一样的,只不过它会在该项目的末尾添加一个正斜杠(如果存在的话)。

load([$file = ''[, $use_sections = FALSE[, $fail_gracefully = FALSE]]])

参数:

$ file(string) - 配置文件名$ use_sections(bool) - 配置值是否应该加载到它们自己的部分(主配置数组的索引)$ fail_gracefully(bool) - 是否返回FALSE或显示错误消息

返回:

成功为TRUE,失败为FALSE

返回类型:

布尔

  • $ file字符串) - 配置文件名

  • $ use_sectionsbool) - 配置值是否应该加载到它们自己的部分(主配置数组的索引)

  • $ fail_gracefullybool) - 是否返回FALSE或显示错误消息

返回:成功时为TRUE,失败时为FALSE
返回类型:布尔值
加载配置文件。

site_url()

返回:

网站网址

返回类型:

base_url()

返回:

基本网址

返回类型:

system_url()

返回:

指向您的CI系统/目录的URL

返回类型:

Previous article: Next article: