配置(Configuration)
在设置站点之后,我们应该做的下一件事是配置站点。 application/config文件夹包含一组用于设置站点基本配置的文件。
配置基本URL
可以在application/config/config.php文件中配置站点的基本URL。 它是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 - 指定数据库的位置,例如localhost或IP地址
username - 在此处设置数据库的用户名。
password - 在此处设置数据库的密码。
database - 在此处设置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'; //This will set the default environment
$active_group = 'test'; //This will set the test environment
自动加载配置
默认情况下,此文件指定应加载哪些系统。 为了使框架尽可能轻量级,默认情况下仅加载绝对最小资源。 人们应该重复加载常用的系统,而不是在本地级别加载。 以下是您可以自动加载的内容 -
Libraries - 它是一个库列表,应该自动加载。 提供数组中的库列表,如下所示,由CodeIgniter自动加载。 在此示例中,我们将自动加载数据库,电子邮件和会话库。
$autoload['libraries'] = array('database', 'email', 'session');
Drivers - 这些类位于system/libraries /或您的application/libraries /目录中,但也放在它们自己的子目录中,它们扩展了CI_Driver_Library类。 它们提供多种可互换的驱动器选项。 以下是自动加载缓存驱动程序的示例。
$autoload['drivers'] = array('cache');
Helper files - 它是一个自动加载的帮助程序文件列表。 提供数组中的库列表,如下所示,由CodeIgniter自动加载。 在给定的示例中,我们是自动加载URL和文件助手。
$autoload['helper'] = array('url', 'file');
Custom config files - 仅当您已创建自定义配置文件时,才会使用这些文件。 否则,请留空。 以下是如何自动加载多个配置文件的示例。
$autoload['config'] = array('config1', 'config2');
Language files - 它是一个语言文件列表,应该自动加载。 看下面给出的例子。 提供数组中的语言列表,如下所示,由CodeIgniter自动加载。 请注意,不要包含文件的“_lang”部分。 例如,“codeigniter_lang.php”将被引用为数组('codeigniter');
Models - 它是模型文件列表,应该自动加载。 提供阵列中的模型列表,如下所示,由CodeIgniter自动加载。 以下是如何自动加载多个模型文件的示例。
$autoload['model'] = array('first_model', 'second_model');