PHP Conference Japan 2024

应用程序配置

您应该提供一个配置数组或一个 ini 配置文件(参见 Yaf_Config_Ini)路径到 Yaf_Application::__construct()

Yaf 将自动合并应用程序配置和用户配置。应用程序配置具有前缀“yaf.”或“application.”。如果同时存在“yaf.”和“application.”,则优先接受“application.”。

示例 #1 一个 PHP 数组示例

<?php
$configs
= array(
"application" => array(
"directory" => dirname(__FILE__),
"dispatcher" => array(
"catchException" => 0,
),
"view" => array(
"ext" => "phtml",
),
),
);
$app = new Yaf_Application($configs);
?>

示例 #2 一个 ini 文件示例

[yaf]
yaf.directory = APPLICATION_PATH "/appliation"
yaf.dispatcher.catchException = 0

[product : yaf]
; user configuration list here

Yaf 应用程序配置
名称 默认值 变更日志
application.directory  
application.ext "php"
application.view.ext "phtml"
application.modules "index"
application.library application.directory . "/library"
application.library.directory application.directory . "/library"
application.library.namespace ""
application.bootstrap application.directory . "/Bootstrap" . application.ext
application.baseUri ""
application.dispatcher.defaultRoute  
application.dispatcher.throwException 1
application.dispatcher.catchException 0
application.dispatcher.defaultModule "index"
application.dispatcher.defaultController "index"
application.dispatcher.defaultAction "index"
application.system  

以下是配置指令的简要说明。

application.directory 字符串

应用程序的目录,即包含“controllers”、“views”、“models”、“plugins”文件夹的文件夹。

注意:

此配置项是唯一一个没有默认值的项。您应该始终手动定义它。

application.ext 字符串

PHP 脚本的文件扩展名,用于类自动加载( Yaf_Loader)。

application.view.ext 字符串

视图模板脚本的文件扩展名。

application.modules 字符串

已注册模块的逗号分隔列表,用于路由过程,尤其是在 PATH_INFO 中有多于三个段时,

Yaf 需要一种方法来确定第一个段是否为模块名称。

application.library 字符串

本地库目录,参见 Yaf_Loaderyaf.library

注意:

在 Yaf 2.1.6 之后,此配置项可以是数组。库路径将尝试使用 application.library.directory 中设置的项。

application.library.directory 字符串

application.library 的别名。在 Yaf 2.1.6 中引入。

application.library.namespace 字符串

本地库命名空间的逗号分隔前缀。

在 Yaf 2.1.6 中引入。

application.bootstrap 字符串

Bootstrap 类脚本的绝对路径。

application.baseUri 字符串

用于在路由过程中删除请求 URI 的固定前缀。举个例子,有一个请求,请求 URI 为“/prefix/controller/action”。如果您将 application.baseUri 设置为“/prefix”,则只有“/controller/action”将在路由过程中作为 PATH_INFO。

通常,不需要设置此值。

application.dispatcher.throwException 布尔值

如果将其设置为 On,则在发生某些错误时,Yaf 将抛出异常。另请参见 Yaf_Dispatcher::throwException()

application.dispatcher.catchException 布尔值

如果将其设置为 On,则在存在未处理的异常时,Yaf 将转发到 Error 控制器/操作。另请参见 Yaf_Dispatcher::catchException()

application.dispatcher.defaultRoute 字符串

默认路由,如果未指定,则静态路由将用作默认路由。参见: Yaf_Router::addRoute()

application.dispatcher.defaultModule 字符串

默认模块名称,另请参见 Yaf_Dispatcher::setDefaultModule()

application.dispatcher.defaultController 字符串

默认控制器名称,另请参见 Yaf_Dispatcher::setDefaultController()

application.dispatcher.defaultAction 字符串

默认操作名称,另请参见 Yaf_Dispatcher::setDefaultAction()

application.system 字符串

在 application.ini 中设置 yaf 运行时配置,例如: application.system.lowcase_path

注意:

只有这些 INI_ALL 配置才能以这种方式设置。

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top