CodeIgniter - 配置


设置好站点后,接下来我们应该做的就是配置站点。application/config 文件夹包含一组设置站点基本配置的文件。

配置基本 URL

站点的基本 URL 可以在 application/config/config.php 文件中配置。它是您的 CodeIgniter 根目录的 URL。通常,这将是您的基本 URL,带有尾部斜杠,例如

http://example.com/

如果未设置,则 CodeIgniter 将尝试猜测安装的协议、域和路径。但是,您应该始终显式配置它,并且永远不要依赖自动猜测,尤其是在生产环境中。您可以使用键“base_url”在 $config 数组中配置基本 URL,如下所示 -

$config['base_url'] = 'http://your-domain.com';

数据库配置

站点的数据库可以在 application/config/database.php 文件中配置。通常我们需要为不同的环境(例如开发和生产)建立数据库。利用CodeIgniter中提供的多维数组,我们可以为不同的环境设置数据库。配置设置存储在数组中,如下所示 -

$db['default'] = array( 
   'dsn'   => '', 
   'hostname' => 'localhost', 
   'username' => 'root', 
   'password' => '', 
   'database' => 'database_name', 
   'dbdriver' => 'mysqli', 
   'dbprefix' => '', 
   'pconnect' => TRUE, 
   'db_debug' => TRUE, 
   'cache_on' => FALSE, 
   'cachedir' => '', 
   'char_set' => 'utf8', 
   'dbcollat' => 'utf8_general_ci',
   'swap_pre' => '', 
   'encrypt' => FALSE, 
   'compress' => FALSE, 
   'stricton' => FALSE, 
   'failover' => array() 
);

除了主机名、用户名、密码、数据库和 dbdriver 之外,您可以将几个选项保留为默认值。

  • hostname - 在此指定数据库的位置,例如本地主机或 IP 地址

  • username - 在此设置数据库的用户名。

  • 密码- 在这里设置数据库的密码。

  • 数据库- 此处设置数据库的名称。

  • dbdriver - 设置您正在使用的数据库类型,例如 MySQL、MySQLi、Postgre SQL、ODBC 和 MS SQL。

通过更改数组$db的键,您可以设置数据库的其他配置,如下所示。在这里,我们将键设置为“test”以设置测试环境的数据库,并保持其他数据库环境不变。

$db['test'] = array( 
   'dsn'   => '', 
   'hostname' => 'localhost', 
   'username' => 'root', 
   'password' => '', 
   'database' => 'database_name', 
   'dbdriver' => 'mysqli', 
   'dbprefix' => '', 
   'pconnect' => TRUE, 
   'db_debug' => TRUE, 
   'cache_on' => FALSE, 
   'cachedir' => '', 
   'char_set' => 'utf8', 
   'dbcollat' => 'utf8_general_ci', 
   'swap_pre' => '', 
   'encrypt' => FALSE, 
   'compress' => FALSE, 
   'stricton' => FALSE, 
   'failover' => array()
);

您可以通过更改变量的值来简单地切换到不同的环境,如下所示 -

$active_group = '默认'; //这将设置默认环境

$active_group = '测试'; //这将设置测试环境

自动加载配置

默认情况下,此文件指定应加载哪些系统。为了使框架尽可能轻量,默认情况下仅加载绝对最少的资源。人们应该自动加载经常使用的系统,而不是在本地重复加载它。以下是您可以自动加载的内容 -

  • - 它是应该自动加载的库列表。提供数组中的库列表,如下所示,由 CodeIgniter 自动加载。在此示例中,我们自动加载数据库、电子邮件和会话库。

$autoload['libraries'] = array('database', 'email', 'session');
  • 驱动程序- 这些类位于 system/libraries/ 或 application/libraries/ 目录中,但也放置在它们自己的子目录中,并且它们扩展了 CI_Driver_Library 类。他们提供多种可互换的驱动程序选项。以下是自动加载缓存驱动程序的示例。

$autoload['drivers'] = array('cache');
  • 帮助文件- 这是要自动加载的帮助文件列表。提供数组中的库列表,如下所示,由 CodeIgniter 自动加载。在给定的示例中,我们自动加载 URL 和文件助手。

$autoload['helper'] = array('url', 'file');
  • 自定义配置文件- 仅当您创建了自定义配置文件时,这些文件才可供使用。否则,请将其留空。以下是如何自动加载多个配置文件的示例。

$autoload['config'] = array('config1', 'config2');
  • 语言文件- 它是应该自动加载的语言文件列表。看下面给出的例子。提供数组中的语言列表,如下所示,由 CodeIgniter 自动加载。请记住,不要包含文件的“_lang”部分。例如,“codeigniter_lang.php”将被引用为 array('codeigniter');

  • 模型- 它是模型文件的列表,应该自动加载。提供数组中的模型列表,如下所示,由 CodeIgniter 自动加载。以下是如何自动加载多个模型文件的示例。

$autoload['model'] = array('first_model', 'second_model');