Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Jak używać Singleton w klasach
Matado
post
Post #1





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 9.12.2008

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


Chciałbym wykorzystać Singleton w moim systemie newsowym. Wziąłem tą implementacje z phpedia.pl, ale mam problem. Jak użyć Singleton żeby można było go wykorzystywać w moich klasach?
Czy trzeba dołączyć plik z klasą Singleton do mojej klasy przez include() czy co, tylko jak później tego użyć np. z łączeniem się przez PDO?
Jak w ogóle go użyć do łączenia się z bazą danych przy kilku klasach?

Implementacja z phpedia.pl
  1. <?php
  2.  
  3. final class Singleton
  4. {
  5.    /**
  6.      * Przechowuje instancję klasy Singleton
  7.      *
  8.      * @var object
  9.      * @access private
  10.      */
  11.    private static $oInstance = false;
  12.  
  13.    /**
  14.      * Zwraca instancję obiektu Singleton
  15.      *
  16.      * @return Singleton
  17.      * @access public
  18.      * @static
  19.      */
  20.    public static function getInstance()
  21.    {
  22.        if( self::$oInstance == false )
  23.        {
  24.            self::$oInstance = new Singleton();
  25.        }
  26.        return self::$oInstance;
  27.    }
  28.  
  29.    private function __construct() {}
  30. }
  31. ?>


Przykładowa klasa
  1. <?php
  2.  
  3. class news
  4. {
  5.    public function __construct()
  6.    {
  7.        
  8.    }
  9.    
  10.    public function somemethod()
  11.    {
  12.  
  13.    }
  14. }
  15.  
  16. ?>


Ten post edytował Matado 29.04.2009, 13:42:53
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
osl
post
Post #2





Grupa: Zarejestrowani
Postów: 260
Pomógł: 41
Dołączył: 6.04.2009
Skąd: Gdańsk/okolice

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


żeby używać Singletona trzeba go zrozumieć od początku do końca, nie ma sensu używać go na siłę "bo mówią że to fajne".
klasę dołączasz jak każdą inną klasę, tu ważne jest jej zachowanie.

co dokładnie chcesz osiągnąć z tymi bazami?
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 16.10.2025 - 17:30