Comme mentionné ailleurs,
le fichier de configuration est lu en deux passes:
- La première passe ne prend en compte
que le groupe de paramètres de rang 0
Ces paramètres sont rangés dans un dictionnaire.
- La seconde passe sélectionne un groupe de paramètres parmi ceux restants
Les paramètres du groupe sélectionné mettent à jour le dictionnaire.
Si une clef est la même que l'une du groupe 0,
sa valeur écrase la précédente.
Vous pouvez tirer parti de ces deux passes en écrivant les paramètres valables
pour presque tous les arbres dans le groupe de paramètres
de rang 0.
La valeur requise par les autres arbres est codée à nouveau dans les groupes
de paramètres des arbres concernés.
Exemple avec l'alphabet pour un arbre:
( { # Groupe de parametres global
...
, 'encoding' => 'iso-8859-1' # Alphabet par defaut
...
}
, { 'baseurl' => 'http://localhost/tree-1' # Utilise l'alphabet par defaut
... # Pas de parametre 'encoding' ici
}
, { 'baseurl' => 'http://localhost/tree-2'
, 'encoding' => 'utf-8' # Utiliser Unicode pour celui-ci
...
}
, { 'baseurl' => 'http://localhost/tree-3' # De nouveau l'alphabet par defaut
... # Pas de parametre 'encoding' ici
}
)
Vous pouvez le faire pour n'importe quel paramètre,
mais soyez prudents avec les paramètres de base de données
ou ceux relatifs aux URL.