The Yaf_Config_Ini class
(Yaf >=1.0.0)
簡介
Yaf_Config_Ini允許開發者通過巢狀的對象屬性語法在應用程式中用熟悉的INI格式儲存和讀取配置數據。 INI格式在提供擁有配置數據鍵的等級結構和配置數據節之間的繼承能力方面具有專長。 配置數據等級結構通過用點或者句號(.)分離鍵值。 一個節可以擴充套件或者通過在節的名稱之後帶一個冒號(:)和被繼承的配置數據的節的名稱來從另一個節繼承。
注意:
Yaf_Config_Ini利用PHP的函式parse_ini_file()來解析配置檔案的。 請仔細檢視這個函式的文件,注意它的一些特殊用途。以及它傳遞給Yaf_Config_Ini的一些比如 "TRUE", "FALSE","yes", "no", 和"NULL"的特殊值的處理方式
類摘要
class Yaf_Config_Ini
extends
Yaf_Config_Abstract
implements
Iterator, Traversable, ArrayAccess, Countable {
/* 屬性 */
/* 方法 */
/* 繼承的方法 */
}屬性
- _config
- _readonly
範例
示例 #1 Yaf_Config_Ini()example
這個例子說明了使用Yaf_Config_Ini從一個INI配置檔案中獲取配置數據的基本用法。 這個例子中既有生產環境的配置方法也有演示環境的配置方法。 因為演示環境的配置跟生產環境的非常類似,所以演示環境的配置繼承了生產環境的配置。 在複雜的情況下,決定是任意的,也可以寫成相反的。在更復雜的情況下,生產環境繼承自演示環境不是不可能的。 假設,以下配置數據都包含在/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
<?php
$config = new Yaf_Config_Ini('/path/to/config.ini', 'staging');
var_dump($config->database->params->host);
var_dump($config->database->params->dbname);
var_dump($config->get("database.params.username"));
?>
以上例程的輸出類似於:
string(15) "dev.example.com" string(6) "dbname" string(7) "devuser
目錄
- Yaf_Config_Ini::__construct — 建構函式
- Yaf_Config_Ini::count — 返回配置的節數量
- Yaf_Config_Ini::current — 返回目前節點
- Yaf_Config_Ini::__get — 讀取節點配置
- Yaf_Config_Ini::__isset — 檢查節點是否存在
- Yaf_Config_Ini::key — 返回目前元素的鍵
- Yaf_Config_Ini::next — 向前移動到下一個元素
- Yaf_Config_Ini::offsetExists — 檢查一個偏移位置是否存在
- Yaf_Config_Ini::offsetGet — 獲取一個偏移位置的值
- Yaf_Config_Ini::offsetSet — 設定一個偏移位置的值
- Yaf_Config_Ini::offsetUnset — 復位一個偏移位置的值
- Yaf_Config_Ini::readonly — 檢查配置是否只讀
- Yaf_Config_Ini::rewind — 檢查目前位置是否有效
- Yaf_Config_Ini::__set — The __set purpose
- Yaf_Config_Ini::toArray — 轉換為陣列的格式
- Yaf_Config_Ini::valid — 檢查迭代器是否有效