Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] organisation du code : où faire la configuration applicative ?

Posted by sylvain261 on 07/31/2007 10:38

Salut,

Dans une appli, y a tjs des choses à coder en dur (certains id, une adresse email, etc...). Je m'interroge sur l'endroit où, je dois définir les constantes qui me servent dans mon applications.

A priori ce n'est pas dans defaultconfig.ini.php et dans config.ini.php puisque ces 2 fichiers sont là pour paramétrer le framework (en fonction de l'environnement) et non pas l'application elle même. Si ?

Dois-je créé un fichier ini supplémentaire, si oui, y a t'il qqch à faire pour qu'il soit pris en compte ? et comment accéder à son contenu ? (via la variable globale gJConfig ?)

Ou bien le mieux est il de créer une classe par module qui contiendrait en propriété membre les différentes constantes dont j'ai besoin ?

Bref, qu'elle est la best practice à ce sujet ?

Thks !

  [Opened] Re: organisation du code : où faire la configuration applicative ?

Reply #1 Posted by bballizlife on 07/31/2007 11:44

Je ne saurais dire qu'elle est la meilleure pratique, mais moi je serais plutôt tenté d'utiliser les fichiers de conf existants (defaultconfig.inig.php notamment), et c'est ce que je fais en général.

Ceci dit je n'ai jamais eu besoin d'ajouter énormément d'options de conf pour une application et cela m'a suffit ainsi.

A voir ce qu'en pense les autres.


N'importe comment c'est dans la doc

  [Opened] Re: organisation du code : où faire la configuration applicative ?

Reply #2 Posted by laurentj on 07/31/2007 13:37

À priori, je serais tenté de mettre la conf de mon appli dans le fichier defaultconfig.ini.php ou index.ini.php (tout dépend si la conf de l'appli dépend des points d'entrées).

Et bien sûr, pour que cela soit propre, je met les options de conf dans une section spécifique de l'appli, du genre

  [monappli]
  toto = titi

Et ensuite, on y accéde via l'objet global $gJConfig->monappli[toto].

Maintenant, si il y a beaucoup d'options et une organisation précise, rien n'empêche de se faire son propre fichier ini, que tu peux placer dans var/config. Mais dans ce cas, il faut le parser toi même avec parse_ini_file, le stocker toi même quelque part etc.. Remarque dans ce cas là, tu peux utiliser autre chose que le format ini (php, xml, yaml ou autre) puisque c'est toi qui t'occupe de le parser. Et pour l'opération de lecture du fichier de conf, tu peux soit te faire un plugin de coordinateur, soit mettre des instructions dans le application.init.php de ton application. D'ailleurs tu peux inclure directement en php des options de conf pour ton application.

En résumé, pour stocker des paramètres de conf de ton appli, tu peux utiliser :

  • soit les fichiers ini du framework
  • soit un fichier de ton cru que tu parses dans un plugin de coordinateur ou le application.init.php
  • soit directement dans le fichier application.init.php

  [Opened] Re: organisation du code : où faire la configuration applicative ?

Reply #3 Posted by laurentj on 07/31/2007 16:59

jParams (ou jPreferences, jPrefs le nom n'est pas encore figé) est toujours d'actualité, mais je n'ai pas encore eu le temps de le faire. Et bien sûr, il sera le plus performant possible, avec un système de cache dans la mesure du possible..

Voir le ticket et un début de spéc.

Si quelqu'un veut s'y atteler, qu'il n'hésite pas :-)

 
Page
  1. organisation du code : où faire la configuration applicative ?