CodeIgniter - 配置

设置站点后,下一步就是配置站点。application/config 文件夹包含一组设置站点基本配置的文件。

配置基本 URL

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

http://example.com/

如果未设置,则 CodeIgniter 将尝试猜测安装的协议、域和路径。但是,您应该始终明确配置它,并且不要依赖自动猜测,尤其是在生产环境中。您可以在 $config 数组中使用键"base_url"配置基本 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 − 在此处指定数据库的位置,例如 localhost 或 IP 地址

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

  • password − 在此处设置数据库的密码。

  • database − 在此处设置数据库的名称。

  • 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 = 'default'; //这将设置默认环境

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

自动加载配置

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

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

$autoload['libraries'] = array('database', 'email', 'session');
  • Drivers − 这些类位于 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');

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

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