Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sposoby zapisywania Configów
Avatarus
post 2.02.2008, 20:47:36
Post #1





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

Ostrzeżenie: (0%)
-----


Witam
Zastanawiam się jak zrobić efektywny system zapisywania konfigów panleu sterowania.
Obecnie mam ten oparty o bazę. Czyli jest tabele w niej są zapisywanie ustawienia itp.
Potem w skrypcie funkcja która wczytuje z bazy te dane.
Proste...no niby tak..ale moim zdaniem to zbędne zapytanie SQL, które można pominąć, bo te dane nie są tak często zmieniane.

Mam kilka pomysłów, pomóżcie mi wybrać najbardziej efektywny, który najlepiej oszczędzi serwer smile.gif
1: Plik np. Config.php
W nim będą zapisywane zmienne wraz z konkretnymi newsami np: $ilosc_pokazywanych_newsow=5; itp

Zalety, łatwo dołączać do każdego skryptu, jednak znowu trzeba wywołać includa lub require.....

2: Zrobić Sekcje początkowe w każdym pliku w który będzie się korzystać z konfiguracji. Zasadniczo w moim mini CMS są 4 taki pliki reszta skryptów dziedziczyło by te dane.
więc wyglądało by to tak:
  1. <?php
  2. ///////////////////////////////
  3. //SEKCJA KONFIGURACYJNA
  4. ///////////////////////////////
  5. $ilosc_pokazywanych_newsow=5;
  6. ///////////////////////////////
  7. //KONIEC SEKCJI
  8. ///////////////////////////////
  9. ........[tu treść skryptu]......
  10. ?>


Plusy to fakt że nie trzeba korzystać z bazy, ani nie trzeba includowac plików.
Minus: może być trudne do zapanowania jeśli wiele plików musi odczytywać konfig (oczywiście mowa o tych które nie mogą go dziedziczyć.

3. Pozostać przy obecnym układzie bazowym

Macie jakieś sugestie...
Z góry dziękuje za pomoc.
Pozdrawiam.


--------------------
Go to the top of the page
+Quote Post
nrm
post 2.02.2008, 20:53:27
Post #2





Grupa: Zarejestrowani
Postów: 627
Pomógł: 33
Dołączył: 1.05.2005
Skąd: Katowice

Ostrzeżenie: (0%)
-----


4. Zostań przy bazie, a zapytanie skeszuj. W zależności od tego co za informacje tam trzymasz to może się nawet okazać, że pierwsze zapytanie tylko wykona się przy setupie a potem już dlugo, dlugo nic winksmiley.jpg a po co? zalezy od danych, czasami trzeba powiazac takie dane a w bazie lepiej, latwiej i szybciej.


--------------------
Go to the top of the page
+Quote Post
.radex
post 2.02.2008, 20:59:02
Post #3





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


ja raczej byłbym za osobnymi plikami - łatwe do zapanowania i szybkie.


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
nowotny
post 2.02.2008, 21:41:44
Post #4





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

Ostrzeżenie: (0%)
-----


Ja używam plików ini z podziałami na sekcje... Ładuje się szybko: $config=parse_ini_file('plik.ini'); a potem tylko $config['ustawienie'] i tyle... Zalety: można zmieniać ustawienia przy braku dostępu do bazy...
Go to the top of the page
+Quote Post
Cysiaczek
post 2.02.2008, 21:50:35
Post #5





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Jeszcze XML, choć wydaje się z początku mało wygodny.
Wogóle, to nie jest ważne, jak są dane przechowywane, ale czy zostały właściwie napisane mechanizmy ich cechowania. Słusznie mówi ~normanos, że najważniejszy jest cache. Mi się podoba zserializowany obiekt, którego jeśli nie ma, to jest odczytywany konfig smile.gif

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
.radex
post 2.02.2008, 21:52:34
Post #6





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


wadą jest to, że musisz odpowiednio te pliki zabezpieczyć (np. za pomocą htaccess), po za tym ini i xml zawsze są troszkę wolniejsze.

Ten post edytował radex_p 2.02.2008, 21:53:44


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
GrayHat
post 2.02.2008, 22:26:09
Post #7





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

Ostrzeżenie: (0%)
-----


Cytat(radex_p @ 2.02.2008, 21:52:34 ) *
wadą jest to, że musisz odpowiednio te pliki zabezpieczyć (np. za pomocą htaccess), po za tym ini i xml zawsze są troszkę wolniejsze.


A czy kolega zapisze konfigurację połączenia z bazą danych w bazie danych?? Skoro i tak musi przeczytać oddzielny plik konfiguracyjny to nie ma problemu, żeby dodać kolejną sekcję winksmiley.jpg czas wykonywania ten sam a ograniczamy te zapytanie winksmiley.jpg
Np plik ini:

Kod
[setup]
  db.adapter = PDO_MYSQL
  db.config.host = localhost
  db.config.username = root
  db.config.password = xxxxxx
  db.config.dbname = xxxxx

  site.baseurl = http://php.pl
  site.title = Wortal PHP.PL


Odnośnie .htaccess - w czym problem stworzyć plik z zawartościa:
Kod
deny from all

questionmark.gif

Szczególnie jak się posiada dobrą architekturę aplikacji np podział na katalogi:

/public
/private

w katalogu public wyłączamy np mod_rewrite a w private dajemy deny from all... to podstawy tworzenia architektur oprogramowania winksmiley.jpg

Ten post edytował GrayHat 2.02.2008, 22:28:44


--------------------
*Note: No animals were killed durning the construction of this post.
Go to the top of the page
+Quote Post
nrm
post 2.02.2008, 22:46:26
Post #8





Grupa: Zarejestrowani
Postów: 627
Pomógł: 33
Dołączył: 1.05.2005
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(GrayHat @ 2.02.2008, 22:26:09 ) *
A czy kolega zapisze konfigurację połączenia z bazą danych w bazie danych?? Skoro i tak musi przeczytać oddzielny plik konfiguracyjny to nie ma problemu, żeby dodać kolejną sekcję winksmiley.jpg czas wykonywania ten sam a ograniczamy te zapytanie winksmiley.jpg

To mogą być 2 różne rzeczy. Przykład:
- konfiguracja w pliku tzw. rozruchowa (baza, ścieżki itp.) np.konfiguracja odpalenia frameworka i jego komponentów (db, sesje itp)
- konfiguracja samej _APLIKACJI WEBOWEJ_ -> tu nie ma co dawać przykładu bo co aplikacja to inne wymagania w każdym razie chodzi o to co jest związane z stricte z samą aplikacją, a to właśnie czasami warto/można/trzeba wsadzać w bazę.

Mam nadzieję, że jasno to pokazałem.


--------------------
Go to the top of the page
+Quote Post
jarmiar
post 3.02.2008, 13:35:57
Post #9





Grupa: Zarejestrowani
Postów: 616
Pomógł: 12
Dołączył: 16.07.2006
Skąd: : getCity ( );

Ostrzeżenie: (0%)
-----


Ja osobiście pliki konfiguracyjne robię w ten sposób:

config.php

Kod
login<!!!!>hasło<!!!>host<!!!>baza<!!!>ilosc_newsow<!!!>tytul<!!!>itp


Potem wyciągam za pomocą p[ętli no i oczywiscie zabezpieczam ten plik przez .htaccess

Pozdrawiam


--------------------
Jeśli my czegoś nie zrobimy, zrobią to za nas inni
Go to the top of the page
+Quote Post
nowotny
post 3.02.2008, 13:40:16
Post #10





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

Ostrzeżenie: (0%)
-----


No właśnie wszystko zależy co się robi... jak masz 3 ustawienia na krzyż, z czego 2 to username i hasło do bazy to wystarczą pliki... jak coś bardziej skomplikowanego to już baza...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:20