当前位置: 首页 > 文档资料 > FuelPHP 中文文档 >

配置 - 一般

优质
小牛编辑
129浏览
2023-12-01

简介

FuelPHP 框架是以配置惯例的想法建成。这样的结果是你可以在一个高度可自订的基础上, 开始建立你的应用程序。

配置档案储存在 app/config 文件夹里。 应用程序的基本配置在 app/config/config.php 完成。 载入的配置可依特定环境改变,更多关于此在 环境

要覆写功能相关配置的设定,在 app/config 建立一个新档案, 或从 core/config 複製相应的档案到 app/config。

配置选项

这些是可以被定义在应用程序中的基本配置档案 app/config/config.php 的选项。 当你刚装好 FuelPHP 时,这个档案是空的。所有如下定义的预设值, 被定义在 core/config 文件夹中的相应档案。当你想要覆写一个预设值时,在你的应用程序配置档案中添加该键到阵列, 并修改值。或者,从核心档案複製该段落到应用程序档案, 并修改它。

FuelPHP 使用 "句点表示法" 处理阵列。它是一种方便存取一个多维阵列元素的方式。 此表示法也用于文件中,因为它提供简单的阵列类型参照。例如:

// 当你看见 "always_load.packages = array()",它是以下的简写:
array("always_load" => array("packages" => array(...) ) );
类型预设描述
base_url字串
null
应用程序的基础 URL。可以是相对的。必须包含一个斜线。('/foo/'、'http://example.com/')
url_suffix字串
''
任何需要被添加到 Fuel 产生的 URL 的后缀。如果后缀是一个副档名, 确认包含点('.html')。
index_file字串
'index.php'
主引导程序的档案名称。如果你使用 mod_rewrite,设为 false 或移除。
controller_prefix字串
'Controller_'
当对应 URI 到控制器类别名称时用来寻找控制器的类别前缀。 如果你想要你的控制器有命名空间或在不同于 app/classes/controller 的文件夹,你必须变更它。
profiling布林
false
是否启用分析器。
cache_dir字串
APPPATH.'cache/'
要储存快取档案的资料夹,此资料夹必须是可写入的。
caching布林
false
是否启用档案 finder 快取。
cache_lifetime整数
3600
档案 finder 快取存活时间(秒)。
ob_callback回呼(callback)
null
给 ob_start() 的回呼(callback),设为 ob_gzhandler 以启用 gzip 输出编码。
errors阵列阵列,包含配置键以控制检测到错误时的行为:
errors.continue_on阵列
array(
)
在哪一种 php 错误继续执行。见错误处理
errors.throttle整数
10
在我们停止显示前要显示多少错误。(预防记忆体不足错误)
errors.notices布林
true
是否显示 notices。
language字串
'en'
预设的应用程序语言,由 Lang 类别 使用。
locale字串
'en_US'
在一些 php 安装需要给 setlocale() 使用,设定为 false 以防止被设定。
每种 OS 的设定语法会不同,例如 Ubuntu 需要一个 .utf8(编码)后缀。
encoding字串
'UTF-8'
应用程序的预设字元编码。
server_gmt_offset整数
0
当 time() 使用时,伺服器与 GMT 时间戳记以秒为单位的偏移量。
这仅仅是为了改正错误的伺服器配置:time() 应始终回传自 January 1 1970 00:00:00 GMT 以来的秒数。
default_timezone字串
'UTC'
伺服器时区。

如果你设定这个值,请 务必 确保该时区配置与你伺服器上设定的时区相符。 因为时区计算的运作藉由转化为 GTM,当你时区不相符时,它将导致严重错误。 由于不正确的过期时间计算,将造成在你应用程序中的时间显示不正确,以及 cookie/session 的问题!

log_threshold整数
Fuel::L_WARNING
记录的门槛。什幺等级的讯息要记录,或一个应该被记录的特定讯息等级的阵列。阅读关于可能的值
log_path字串
APPPATH.'logs/'
储存纪录的资料夹,此资料夹必须为可写入的。
log_date_format字串
'Y-m-d H:i:s'
在纪录中使用的时间/日期格式。
 
security阵列阵列,包含配置键以控制你的应用程序安全:
security.csrf_autoload布林
false
是否自动检查 CSRF 符记。阅读更多关于 CSRF
security.csrf_token_key字串
'fuel_csrf_token'
当检查 CSRF 符记时取回的 $_POST 键。
security.csrf_expiration整数
0
设定 CSRF cookie 的到期时间。任何大于 0 的秒数 cookie 将过期。
security.token_salt字串
'put your salt value here to make the token more secure'
用来确保产生的安全符记是不可预测的盐。
security.allow_x_headers布林
false
允许 Input 类别在呈现时使用 "X" 表头,例如 HTTP_X_FORWARDED_FOR 或 HTTP_X_FORWARDED_PROTO。
security.uri_filter阵列
array('htmlentities')
要用来过滤 URI 的 PHP 函式。
security.input_filter阵列
array()
用来过滤输入阵列($_GET、$_POST 和 $_COOKIE)的 PHP 函式。可以被设为 xxs_clean, 根据输入的大小可能导致效能损失。
security.output_filter阵列
array()
用来过滤设定给检视变数的 PHP 函式。可以被设为 xxs_clean, 根据变数的大小可能导致效能损失。
security.auto_filter_output布林
true
是否自动编码(htmlentities)检视资料。
security.whitelisted_classes阵列
array(
'stdClass',
'Fuel\\Core\\View',
'Fuel\\Core\\Presenter',
'Closure'
)
随着输出编码打开,所有传递的物件将被转换为字串或抛出例外, 除非它们是此阵列中类别的实例。
 
cookie阵列阵列,包含配置键定义全域的 cookie 设定:
cookie.expiration整数
0
在 cookie 到期前的秒数。
cookie.path字串
'/'
限制 cookie 可用的路径。
cookie.domain字串
null
限制 cookie 可用的网域。
cookie.secure布林
false
只透过安全连线传输 cookie。
cookie.http_only布林
false
只透过 HTTP 传输 cookie,停用 javascript 存取。
module_paths阵列
array()
指向模组目录的路径。当添加一个模组没有指定位置时使用。
 
always_load阵列阵列,包含框架初始化时必须载入的项目:
always_load.packages阵列
array()
那些套件要自动载入。像这样指定:array('package')array('package' => PKGPATH.'path/to/package')为了让它运作,套件路径必须在 package_paths 被设定
always_load.modules阵列
array()
那些模组要自动载入。像这样指定:array('package')。自动载入的模组可藉由 URL 存取。为了让它运作,模组路径必须在 module_paths 被设定
always_load.classes阵列
array()
哪些类别要自动载入和初始化。当你想要从套件或模组自动载入一个类别时, 确保那些也被自动载入了!
always_load.config阵列
array()
哪些配置档案要自动载入。像这样载入一个配置档案进入群组:array('config')array('filename' => 'group')。如果你不想载入档案进入群组,设定群组名称为 nullarray('filename' => null)
always_load.language阵列
array()
哪些语言档案要自动载入。像这样载入一个语言档案进入群组:array('lang')array('filename' => 'group')。如果你不想载入档案进入群组,设定群组名称为 nullarray('filename' => null)

与配置档案/设定的互动是透过使用 Config 类别达成。 配置档案也可以使用 Oil 产生。