Yet Another Configurations Container
(Yaconf) は、設定コンテナです。
これは INI
ファイルをパースし、
PHP の実行が始まるタイミングで結果を格納します。
この結果は、PHP のライフサイクル全体で利用できます。
Yaconf は、全ての設定をインターン化された文字列か、 変更不能な配列として格納します。 つまり、これらの設定はリファレンスカウントの対象にならないため、 Yaconf から設定を取得する際にコピーが発生せず、とても高速です。
Yaconf は、INI
ファイル内でセクションやセクションの継承をサポートしています。
PHP が non-ZTS としてビルドされている場合、
Yaconf は INI
ファイルが変更された後に、自動的に設定をリロードする機能をサポートしています。
Yaconf を動かすには、PHP 7.0 以降が必要です。
例1 INI ファイルの例
;Simple key val key=val ;Hash hash.a=val ;Array arr.0=val ;or arr[]=val ;PHP constants version=PHP_VERSION ;Environment variable env=${PATH}
例2 INI セクションの例
[SectionA] key=val hash.a=val ;SectionB inherits SectionA [SectionB:SectionA] key=new_val ;override configuration key in SectionA