FuelPHP - 配置


在本章中,我们将了解如何配置 FuelPHP 应用程序。默认情况下,配置文件存储在fuel/app/config文件夹中。应用程序的主要配置是fuel/app/config/config.php。该配置是使用 PHP 的关联数组指定的。

概述

默认情况下,所有默认配置文件都定义在fuel/core/config文件夹中。要覆盖默认配置,请在/fuel/app/config/config.php文件中添加相应的键并修改值。我们可以使用“点表示法”来简化多维数组。例如,以下配置具有相同的目的(加载指定的包)。

array("always_load" => array("packages" => array( ... ) ) ); 
always_load.packages = array( ... );

配置可以按用途分组并使用不同的文件指定,例如用于数据库配置的 db.php、用于包管理的 package.php 等。

配置格式类型

FuelPHP 非常灵活,提供不同的格式来指定配置。默认配置格式是使用 php 数组的 PHP。其他选项是 -

INI - 简单的基于文本的配置,受许多软件支持,包括 PHP 语言本身。

[group]
key = value

YAML - 易于理解、基于缩进且人类可读的配置管理。

group:
   key: value

JSON - 易于理解且开发人员最常用的文件格式。

{ 
   "group" : 
   { 
      "key": "value" 
   } 
} 

Memcached - 将配置存储在 memcached 服务器中。memcached 服务器详细信息可以使用config.memcached条目在主配置文件fuel/app/config/config.php中指定。

DB - 将配置存储在 RDBMS 系统中。配置表的表结构如下。

CREATE TABLE IF NOT EXISTS `config` ( 
   `identifier` char(100) NOT NULL, 
   `config` longtext NOT NULL, 
   `hash` char(13) NOT NULL, 
   PRIMARY KEY (`identifier`) 
)

可以使用config.databaseconfig.table_name条目在配置文件中指定数据库和表的详细信息。

环境

环境通过加载不同的配置使FuelPHP能够在不同的模式下工作。FuelPHP 支持以下环境。

  • 开发- \Fuel::DEVELOPMENT 设置开发模式

  • 生产- \Fuel::Production 设置生产模式

  • 测试- \Fuel::TEST 设置测试模式

  • Staging - \Fuel::STAGING 设置暂存模式

FuelPHP 还支持创建新环境。这将使每个开发人员都能够拥有自己的配置设置,并且他们可以在编码和测试应用程序时启用它。只需创建一个具有环境名称(例如:test)的文件夹并将配置文件放入新创建的文件夹中即可添加特定环境的配置,如下所示。

. ├── config.php 
├── db.php 
├── development 
│   └── db.php 
├── production 
│   └── db.php 
├── routes.php 
├── staging 
│   └── db.php
└── test 
    └── db.php  
4 directories, 7 files

设置您的环境

可通过三种方式设置您的环境。

选项 1 - 使用 Web 服务器的环境变量设置环境。在Apache Web 服务器的httpd.conf文件的虚拟主机部分添加以下代码。它也可以添加到.htaccess文件中。

SetEnv FUEL_ENV production

选项 2 - 使用 FuelPHP 引导文件/fuel/app/bootstrap.php设置环境

Fuel::$env = (isset($_SERVER['FUEL_ENV']

选项 3 - 使用油设置环境

$ env FUEL_ENV = production php oil -v

它产生以下结果。

Fuel: 1.8 running in "production" mode