Yet Another Framework Yaf_Config_Ini 클래스
(Yaf >=1.0.0)
소개
Yaf_Config_Ini를 사용하면 개발자가 익숙한 INI 형식으로 구성 데이터를 저장하고 중첩된 개체 속성 구문을 사용하여 애플리케이션에서 읽을 수 있습니다.
INI 형식은 구성 데이터 키의 계층 구조와 구성 데이터 섹션 간의 상속을 모두 제공하는 데 특화되어 있습니다. 구성 데이터 계층은 점 또는 마침표(".")로 키를 구분하여 지원됩니다.
섹션은 콜론 문자(":")가 있는 섹션 이름과 데이터를 상속받을 섹션 이름을 따라 다른 섹션에서 확장하거나 상속할 수 있습니다.
메모: Yaf_Config_Ini는 » parse_ini_file() PHP 함수를 사용합니다. "true
", "false
", "yes", "no" 및 "null
"의 특수 값이 처리되는 방식과 같이 Yaf_Config_Ini에 전파되는 특정 동작에 대해 이 문서를 검토하십시오.
클래스 개요
class Yaf_Config_Ini extends Yaf_Config_Abstract implements Iterator, ArrayAccess, Countable {
/* Properties */
/* Methods */
public __construct(string $config_file, string $section = ?)
public count(): void
public current(): void
public __get(string $name = ?): void
public __isset(string $name): void
public key(): void
public next(): void
public offsetExists(string $name): void
public offsetGet(string $name): void
public offsetSet(string $name, string $value): void
public offsetUnset(string $name): void
public readonly(): void
public rewind(): void
public __set(string $name, mixed $value): void
public toArray(): array
public valid(): void
/* Inherited methods */
abstract public Yaf_Config_Abstract::get(string $name, mixed $value): mixed
abstract public Yaf_Config_Abstract::readonly(): bool
abstract public Yaf_Config_Abstract::set(): Yaf_Config_Abstract
abstract public Yaf_Config_Abstract::toArray(): array
}
Properties
- _config
- _readonly
Examples
예제 #1 Yaf_Config_Ini() 예제
이 예는 INI 파일에서 구성 데이터를 로드하기 위한 Yaf_Config_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 constructor
- Yaf_Config_Ini::count — Count all elements in Yaf_Config.ini
- Yaf_Config_Ini::current — Retrieve the current value
- Yaf_Config_Ini::__get — Retrieve a element
- Yaf_Config_Ini::__isset — Determine if a key is exists
- Yaf_Config_Ini::key — Fetch current element's key
- Yaf_Config_Ini::next — Advance the internal pointer
- Yaf_Config_Ini::offsetExists — The offsetExists purpose
- Yaf_Config_Ini::offsetGet — The offsetGet purpose
- Yaf_Config_Ini::offsetSet — The offsetSet purpose
- Yaf_Config_Ini::offsetUnset — The offsetUnset purpose
- Yaf_Config_Ini::readonly — The readonly purpose
- Yaf_Config_Ini::rewind — The rewind purpose
- Yaf_Config_Ini::__set — The __set purpose
- Yaf_Config_Ini::toArray — Return config as a PHP array
- Yaf_Config_Ini::valid — The valid purpose