設定内容を記した配列か、あるいは ini ファイルへのパス (Yaf_Config_Ini を参照ください) を Yaf_Application::__construct() に渡さなければいけません。
Yaf の設定はユーザー設定と混在させることができます。その違いは、 Yaf の設定にはプレフィックス "yaf." あるいは "application." がついているということです。 "yaf." と "application." の両方が存在する場合は、"application." を使います。
例1 配列による yaf の設定
<?php
$configs = array(
"application" => array(
"directory" => dirname(__FILE__),
"dispatcher" => array(
"catchException" => 0,
),
"view" => array(
"ext" => "phtml",
),
),
);
$app = new Yaf_Application($config);
?>
例2 ini ファイルによる yaf の設定
[yaf] yaf.directory = APPLICATION_PATH "/appliation" yaf.dispatcher.catchException = 0 [product : yaf] ; user configuration list here
名前 | デフォルト | 変更履歴 |
---|---|---|
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
string
アプリケーションのディレクトリ。このフォルダの中に "controllers"、"views"、"models"、"plugins" といったフォルダを配置します。
注意:
この項目は、デフォルト値を持たない唯一の項目です。 つまり、必ず指定しなければいけません。
application.ext
string
PHP スクリプトファイルの拡張子。クラスのオートロード (Yaf_Loader) で利用します。
application.view.ext
string
ビューテンプレートスクリプトのファイル拡張子。
application.modules
string
登録済みモジュールのカンマ区切りのリスト。特に、 ルーティングで PATH_INFO に三つ以上のセグメントがあるときに使います。
Yaf は、最初のセグメントがモジュール名なのかそうでないのかを知る手段が必要です。
application.library
string
ローカルライブラリディレクトリ。Yaf_Loader および yaf.library を参照ください。
注意:
Yaf 2.1.6 以降では、この項目に配列を指定できるようになりました。 配列を指定した場合、ライブラリパスには application.library.directory の値を使います。
application.library.directory
string
application.library のエイリアス。 Yaf 2.1.6 で導入されました。
application.library.namespace
string
カンマ区切りで表した、ローカルライブラリ名前空間のプレフィックス。
Yaf 2.1.6 で導入されました。
application.bootstrap
string
ブートストラップクラスのスクリプトへの絶対パス。
application.baseUri
string
ルーティング時に、決まったプレフィックスをリクエスト URI から取り除くために使います。 例として、リクエスト URI が "/prefix/controller/action" だった場合を考えましょう。 application.baseUri を "/prefix" にしておくと、 ルーティング時に "/controller/action" だけが PATH_INFO とみなされるようになります。
ふつうは、この値を設定する必要はありません。
application.dispatcher.throwException
bool
これを On にすると、エラーが発生したときに Yaf が例外をスローするようになります。 Yaf_Dispatcher::throwException() も参照ください。
application.dispatcher.catchException
bool
これを On にすると、Yaf が例外をキャッチできなかったときに Error コントローラの Error アクションに転送するようになります。 Yaf_Dispatcher::catchException() も参照ください。
application.dispatcher.defaultRoute
string
デフォルトのルート。指定しなかった場合は、デフォルトのルートとして Static ルートを使います。 Yaf_Router::addRoute() も参照ください。
application.dispatcher.defaultModule
string
デフォルトのモジュール名。 Yaf_Dispatcher::setDefaultModule() も参照ください。
application.dispatcher.defaultController
string
デフォルトのコントローラ名。 Yaf_Dispatcher::setDefaultController() も参照ください。
application.dispatcher.defaultAction
string
デフォルトのアクション名。 Yaf_Dispatcher::setDefaultAction() も参照ください。
application.system
string
yaf の実行時の設定を、application.ini で application.system.lowcase_path のように設定します。
注意:
この方法で設定できるのは PHP_INI_ALL の項目だけです。