Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.
| Nom | Défaut | Modifiable | Historique |
|---|---|---|---|
| yaconf.directory | "" |
INI_SYSTEM |
|
| yaconf.check_delay | 300 |
INI_SYSTEM |
Voici un éclaircissement sur l'utilisation des directives de configuration.
yaconf.directory
string
Le répertoire où tous les fichiers de configuration INI sont placés.
Seuls les fichiers avec l'extension .ini sont
chargés. Les sous-répertoires sont chargés récursivement (jusqu'à
16 niveaux de profondeur) ; chacun agit comme un niveau de clé, de
sorte qu'un fichier database.ini placé dans le
sous-répertoire users/ est adressé comme
"users.database". Disponible depuis Yaconf 1.2.0 ;
avant cela, seuls les fichiers directement dans le répertoire étaient
chargés.
Les exemples ci-dessous supposent le database.ini suivant placé dans le répertoire configuré, à côté d'un features.ini contenant des paramètres par fonctionnalité.
Exemple #1 Syntaxe du fichier INI
; database.ini
name=production ; valeur scalaire
version=PHP_VERSION ; les constantes PHP sont résolues
connection_string=${DATABASE_URL} ; les variables d'environnement sont résolues
options.max_connections=50 ; clé de hachage imbriquée
options.timeout=30
; entrées de tableau, les deux notations sont équivalentes
replicas.0=replica-1.example.com
replicas[]=replica-2.example.com
Exemple #2 Exemple de sections INI
; features.ini [default] cache_enabled=on rate_limit=100 ; la section "premium" hérite de toutes les clés de "default" et ; remplace celles qu'elle redéfinit [premium:default] rate_limit=1000
yaconf.check_delay
int
L'intervalle, en secondes, auquel Yaconf vérifie si un fichier INI
chargé a changé et recharge les fichiers modifiés (la modification est
détectée en comparant les temps de modification du répertoire). Définir
cette valeur à 0 fait vérifier Yaconf à chaque
requête.
Note:
Cette directive n'est enregistrée que sur les compilations non-ZTS. Sur les compilations ZTS (thread-safe), les configurations sont chargées au démarrage et le rechargement automatique n'est pas disponible ; redémarrer PHP pour prendre en compte les modifications.