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 ;use PHP constants version=PHP_VERSION ;use environment env=${PATH}
例2 INI セクションの例
[SectionA] key=val hash.a=val ;SectionB inherits SectionA [SectionB:SectionA] ;override configuration key in SectionA key=new_val