Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pliki konfiguracyjne
Forum PHP.pl > Forum > PHP
artuross
Witajcie, mam drobny problem. Zastanawiam się mianowicie jak powinien (to może być złe słowo) wyglądać plik konfiguracyjny.

Pozwólcie, że pokażę Wam o co mi chodzi na kodzie źródłowym.

  1.  
  2. // lepsze tablice czy stałe?
  3. $config['database'] = 'localhost';
  4. define('database', 'localhost');
  5.  
  6.  
  7. // jeżeli tablice - prefixy (oczywiście, bez znaczenia jaki 'rozdzielnik'?) czy tablice wielowarstowe?
  8. $config['db-name'] = 'localhost';
  9. $config['db-user'] = 'root';
  10. $config['db-password'] = 'pass';
  11.  
  12. $config['db']['name'] = 'localhost';
  13. $config['db']['user'] = 'root';
  14. $config['db']['password'] = 'pass';
  15.  
  16. // wielkie czy male litery?
  17. $config['db']['name'] = 'localhost';
  18. $config['DB']['NAME'] = 'localhost';
  19.  
  20.  
  21. // jezeli stale - prefixy?
  22. define('DB_NAME', 'localhost');
  23. define('DB_USER', 'root');
  24. define('DB_PASSWORD', 'pass');
  25.  
  26. // teraz komentarze przy wartościach zapisanych w pliku
  27. // w przypadku, gdy jest możliwość wyboru, powinienem je opisać?
  28. // wiem, głupi przykład poniżej, ale tylko do zobrazowania o co mi chodzi
  29. // a może tylko podać możliwe wartości?
  30.  
  31. /*
  32.  * Możliwe wartości:
  33.  * cookies - używa ciasteczek do pamiętania hasha sesji
  34.  * database - przechowuje hash w bazie danych
  35.  *
  36.  * ***************************************************
  37.  *
  38.  * COOKIES lub DATABASE
  39.  */
  40.  
  41.  
  42.  
  43. /*
  44.  * jak widać nie jest to takie hop-siup :)
  45.  * chciałbym, żeby user miał możliwość zmiany wartości w pliku konfiguracyjnym, nawet jeśli nie zna PHP
  46.  *
  47.  * może polecicie artykuły z opisanymi metodami?
  48.  * pokażecie wycinki własnych plików konfiguracyjnych?
  49.  * z góry dziękuję za pomoc - rzecz wydaje się prosta, ale chciałbym mieć te "lepsze" nawyki
  50.  *
  51.  * dodam, że spojrzałem w pliki konfiguracyjne wordpressa i joomli
  52.  * wp ma stałe, przy czym prefix tabeli w db jest zapisany jako zwykła zmienna
  53.  * joomla ma zapisane wartości w klasie jako public
  54.  */
  55.  
!*!
Dane konfiguracyjne powinny być w tablicy, nie ma znaczenia jak ją zapiszesz, bo i tak odwołujesz się do niej w ten sam sposób. Zapomnij o stałych, używaj ich ewentualnie w ostateczności np. ścieżki do głównego pliku/katalogu. Jeśli chodzi o komentarze, poczytaj o dokumentowaniu kodu w php, w pliku konfiguracyjnym i tak nie opłaca się ich mieć, bo jest on po prostu edytowany co jakiś czas.
Crozin
Raczej powinieneś rozważyć XML-a, z dodanym XSD definiującym i opisującym całą strukturę pliku konfiguracyjnego.
artuross
Cytat(Crozin @ 9.06.2012, 13:15:35 ) *
Raczej powinieneś rozważyć XML-a, z dodanym XSD definiującym i opisującym całą strukturę pliku konfiguracyjnego.


No bez przesady, nie tworze jakichs mega projektow. W kazdym razie dzieki za rade , na pewno sie przyjrze.

Przepraszam za brak polskich znakow - z komorki tym razem pisze.
Mephistofeles
Skoro ma być czytelne dla "zwykłego śmiertelnika" to proponuję Yaml.
Parser
Crozin
Cytat
No bez przesady, nie tworze jakichs mega projektow.
A kto powiedział, że to muszą być jakieś mega projekty? XSD stworzysz w kilka minut, a będzie to niezmiernie pomocne, jeżeli ktoś nieznający systemu będzie musiał go skonfigurować.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.