|
Yaf_Config_Ini クラスはじめにYaf_Config_Ini を使うと、設定データをおなじみの INI 形式で保存でき、アプリケーションからもオブジェクトのプロパティとして読めるようになります。 INI フォーマットを拡張して、設定データを階層構造で扱えるようにしたり 設定セクション間での継承を設定できるようにしたりしています。 設定データの階層は、キーをピリオド(".")で区切って表します。 セクションの継承を表すには、セクション名の後にコロン(":") を続け、その後に継承元のセクション名を指定します。
クラス概要Yaf_Config_Ini
class Yaf_Config_Ini
extends
Yaf_Config_Abstract
implements
Iterator, ArrayAccess, Countable {
/* プロパティ */
/* メソッド */
public __construct(string
$config_file , string $section = ?)public void count()
public void current()
public void __get(string
$name = ?)public void __isset(string
$name )public void key()
public void next()
public void offsetExists(string
$name )public void offsetGet(string
$name )public void offsetSet(string
$name , string $value )public void offsetUnset(string
$name )public void readonly()
public void rewind()
public void __set(string
$name , mixed $value )public array toArray()
public void valid()
/* 継承したメソッド */
abstract public mixed Yaf_Config_Abstract::get(string
$name , mixed $value )abstract public bool Yaf_Config_Abstract::readonly()
abstract public Yaf_Config_Abstract Yaf_Config_Abstract::set()
abstract public array Yaf_Config_Abstract::toArray()
}プロパティ
例例1 Yaf_Config_Ini の例 この例は、Yaf_Config_Ini で INI ファイルから設定データを読む方法を示すものです。 この例では、運用環境とステージング環境の設定データを用意しています。 ステージング環境の設定は運用環境とほぼ同じなので、 staging セクションは production セクションを継承しています。 今回の場合はどちらがどちらを継承してもあまり変わらないので 逆に production セクションが staging セクションを継承するようにもできます。 しかし、もっと複雑な設定になるとそうはいかないでしょう。 次のような設定データが /path/to/config.ini に格納されているものとします。 ; Production site configuration data [production] webhost = www.example.com database.adapter = pdo_mysql database.params.host = db.example.com database.params.username = dbuser database.params.password = secret database.params.dbname = dbname ; Staging site configuration data inherits from production and ; overrides values as necessary [staging : production] database.params.host = dev.example.com database.params.username = devuser database.params.password = devsecret
上の例の出力は、 たとえば以下のようになります。 string(15) "dev.example.com" string(6) "dbname" string(7) "devuser
|