Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Przechowywanie danych
Forum PHP.pl > Forum > Przedszkole
olechafm
zadawałem już kiedyś podobne pytanie ale nie otrzymałem wyczerpującej odpowiedzi a ponieważ wydedukowałem inne rozwiązanie to proszę o opinię.

Czy taki sposób przechowywania i dostępu do pewnych stałych danych jest poprawny/bezpieczny. Chodzi mi o pewne wartości, które wykorzystujemy w trakcie działania aplikacji jak np. hasło do bazy danych wykorzystane w managerze bazy danych do nawiązania połączenia. Czy przechowywanie takich danych w klasie w postaci:

  1. class parametry{
  2.  
  3. const DB_PASS="haslo";
  4.  
  5. }



a następnie wywoływanie ich w kodzie w sposób:

  1. parametry::DB_PASS;


jest poprawne i w miarę zgrabne?
nekomata
Możesz używać define przecież a nie tworzyć klasy by przechowywać stałe... :this is madness:
":
olechafm
gdy zdefiniuje je używając define w pliku bez użycia klasy, to w miejscu gdzie danej wartości będę potrzebował muszę ręcznie załączyć ten plik i odwołać się do stałej po jej nazwie już bez użycia klasa::nazwastałej, gdy była przechowywana w klasie to łapała się pod __autoload() i załączanie ręczne nie było potrzebne

wiem że to madness pod warunkiem oczywiście że ta klasa nie robi nic innego prócz przechowywania stałych, widziałem w pewnym kodzie tak wywoływane stałe z klasy - było ich bardzo dużo, przede wszystkim deklaracji ścieżek, używanych np. tak
  1. require_once(Ckonfig::STALA_ŚCIEŻKI."smarty2/Smarty.class.php");


jednak nie mam dostępu do niej, by sprawdzić czy ta klasa rzeczywiście tylko je przechowuje, czy ma jakieś metody...

a gdybym dodatkowo w tej klasie trzymał jakieś wartości zapisane w array(), które nie mogą być przechowywane w const, i klasa ta udostępniała by gettery zwracające wartości tych tabli czy całe tablice to byłoby to mniejszym madness ? smile.gif
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.